• 从零开始学习Linux(1)


    Linux基本操作


    前言

    之前的数据结构模块和算法模块会继续给大家更新,同时接下来会给大家分享Linux的学习笔记,希望对大家有所帮助~


    一、操作系统相关知识

    1.什么是操作系统?

    操作系统是一款进行软硬件管理的软件。

    2.操作系统有什么作用

    操作系统对软硬件合理的进行管理(手段),以达到为上层用户提供良好的稳定的安全的运行环境的目的(目的)。

    image-20221117103439238

    二、Linux基本操作

    接下来的Linux指令类似与windows指令:

    1.ls指令

    语法: ls [选项][目录或文件]
    功能:显示当前所处的目录(只默认显示文件名)
    ls -l :显示文件的更多信息(以列表的形式显示文件的属性)

    image-20221117104323382

    在这里补充一个知识点:
    在windows操作系统中创建一个空文件:
    1.文件存在的位置于磁盘
    2.即使是空文件也依旧会占用磁盘空间的大小
    ps:空文件,即使文件中没有内容,但是空文件的文件名,修改时间…都是必然存在的数据,这些称为文件属性数据,他们也会存在磁盘中,所以空文件也会占用磁盘空间的大小)。
    文件=内容+属性

    image-20221117103513063

    ls -l -a:显示更多隐藏文件

    image-20221117104356798

    ls -la:理论上和上面的指令效果相同

    image-20221117104417477

    2个“-”之前存在空格键

    ll=ls -l

    在Linux操作系统下,文件名或者目录名如果以 . 开头,就为隐藏文件或隐藏目录。

    隐藏目录下的文件都是隐藏文件。

    ls -ld:只显示目录,不显示内容。

    image-20221117105152163

    常用选项:

    -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
    -d 将目录象文件一样显示,而不是显示其下的文件。 如: ls –d 指定目录
    -i 输出文件的 i 节点的索引信息。 如 ls –ai 指定文件
    -k 以 k 字节的形式表示文件的大小。 ls –alk 指定文件
    -l 列出文件的详细信息。
    -n 用数字的 UID,GID 代替名称。 (介绍 UID, GID)
    -F 在每个文件名后附上一个字符以说明该文件的类型, “*”表示可执行的普通文件; “/”表示目录; “@”表
    示符号链接; “|”表示FIFOs; “=”表示套接字(sockets)。(目录类型识别)
    -r 对目录反向排序。
    -t 以时间排序。
    -s 在l文件名后输出该文件的大小。(大小排序,如何找到目录下最大的文件)
    -R 列出所有子目录下的文件。 (递归)
    -1 一行只输出一个文件 。

    2.pwd命令

    语法:pwd

    作用:显示用户当前所在目录(确定自己所处的路径)

    image-20221117104620018

    3.cd命令

    Linux系统中,磁盘上的文件和目录被组成一棵目录树,每个节点都是目录或文件。

    语法:cd 目录名

    功能:改变工作目录。将当前工作目录改变到指定的目录下。 (进入指定目录)

    . 当前路径

    … 上级路径

    cd . 进入当前目录

    cd… 进入上级目录

    cd ~ 进入当前用户的家目录(pwd查看)

    ​ root用户家目录为root,普通用户家目录为home

    ​ windows也有家目录(C盘用户/user)

    image-20221117110522094

    cd - 回到最近上一次所处路径。

    image-20221117110541594

    D:\developer_tools\Java\jre1.8.0.131\bin

    在windows下的路径:\ 路径分隔符

    在Linux下的路径: / 路径分隔符

    在Linux系统中/表示Linux下的根目录

    image-20221117105538146

    Linux的目录结构:整体为一个多叉树的样子。

    windows下用路径定位文件/文件夹,在Linux下同样如此

    为什么使用路径?

    因为子目录(结点)只有一个父目录,也就是说向上找只能找到唯一的父目录,所以路径具有唯一性,使用路径就可以找到我们所找的文件或者目录。

    什么叫绝对路径?

    从根目录开始,定位文件的路径叫做绝对路径,因为从根目录开始定位的,所以不管你处在那个目录下都可以找到所需要的文件。

    什么叫相对路径?

    相对路径就是从你所在目录的的上级目录开始定位,一旦当前目录发生改变就找不到所要找的文件。

    相对路径只能在特定的路径下有效

    当前路径变了相对路径便失效了

    ps:绝对路径虽然很暴力,但是很麻烦,一般只在某些配置文件中,进行对某种文件进行配置时采用。

    ​ 相对路径用法简单,后续指令的操作常用相对路径。

    3.热键

    在这里补充一个热键:Tab

    作用:命令自动补齐

    image-20221117110748126

    注意事项:需要快速点击Tab按键两次

    4.touch指令

    语法:touch [选项]… 文件…
    功能: touch命令参数可更改文档或目录的日期时间,包括存取时间和更改时间,或者新建一个不存在的文件

    touch filename:在当前路径下创建一个普通文件(可指定路径)

    image-20221117111136209

    如果touch命令出现疯狂刷屏,使用Ctrl+C就可终止程序。

    补充一个tree命令:以树状结构显示Linux指定的目录结构

    image-20221117111411204

    如果使用tree出现以下情况:

    image-20221117111451021

    我们可以使用yum指定安装tree命令:

    image-20221117111532500

    常用选项:

    -a 或–time=atime或–time=access或–time=use只更改存取时间。
    -c 或–no-create 不建立任何文档。
    -d 使用指定的日期时间,而非现在的时间。
    -f 此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题。
    -m 或–time=mtime或–time=modify 只更改变动时间。
    -r 把指定文档或目录的日期时间,统统设成和参考文档或目录的日期时间相同。
    -t 使用指定的日期时间,而非现在的时间

    5.nano指令

    语法:nano 文件名:用记事本打开文件,可以直接写代码。

    image-20221117112002877

    写好代码之后下面有很多的功能,*x是保存功能, *x=Ctrl+X;

    image-20221117112208837

    然后点击y代表yes;

    image-20221117112017362

    然后我们使用编译指令,Linux使用的是gcc的编译器,指令为gcc 文件名

    image-20221117112400161

    然后会生成一个a.out文件,我们使用(./a.out)执行当前路径下a.out程序。

    ​ 上方括号内第一个.代表当前路径

    image-20221117112649271

    6.start指令

    语法:stat 文件名

    功能:获取文件的所有属性

    image-20221117112828679

    任何一个文件都有三种时间(ACM)

    1 访问时间(atime:access time):读一次文件的内容,atime就会更新。比如对这个文件运用 more、cat等命令。另外ls、stat命令都不会修改文件的访问时间。
    2 修改时间(mtime:modifiy time):mtime是文件内容最后一次被修改时间。例如vi后保存文件。ls -l列出的时间就是这个时间。
    3 状态改动时间(ctime:change time):ctime是在写入文件、更改所有者、权限或链接设置时随i节点的内容更改而更改的,是该文件的i节点最后一次被修改的时间,通过chmod、chown命令修改一次文件属性,这个时间就会更新。

    一般根据文件的时间属性可以和find命令结合查询到想要的结果
    例如查询最后2小时内更新过的文件 find / -mtime -2
    Linux文件属性的查看方法 :

    1 ls -lc filename 列出文件的 ctime (最后状态更改时间)
    2 ls -lu filename 列出文件的 atime(最后访问时间)
    3 ls -l filename 列出文件的 mtime (最后修改时间)
    4 stat filename 一次性看到文件的三种时间属性

    7.mkdir指令(重要)

    语法: mkdir [选项] dirname…
    功能:在当前目录下创建一个名为 “dirname”的目录

    mkdir -p :d1/d2…递归创建一系列目录

    常用选项:

    -p, --parents 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立
    好那些尚不存在的目录,即一次可以建立多个目录 。

    举例:

    mkdir –p test/test1 : 递归建立多个目录 。

    image-20221117134137931

    8.rmdir指令&&rm指令(重要)

    rmdir是一个与mkdir相对应的命令。 mkdir是建立目录,而rmdir是删除命令 。

    语法: rmdir [-p][dirName]
    适用对象:具有当前目录操作权限的所有使用者
    功能:删除空目录

    rmdir :删除目录(只可以删除空目录) 几乎没什么作用

    rm命令可以同时删除文件或目录

    语法: rm [-f-i-r-v][dirName/dir]
    适用对象:所有使用者(只要权限够,什么都可以删除。)
    功能:删除文件或目录

    rm -r:递归删除,和mkdir递归生成一系列目录搭配使用。

    rm -rf:递归强制删除(r递归f强制)

    image-20221117135110115

    rm -rf ./* 表示删除当前所有内容。

    常用选项:
    -f 即使文件属性为只读(即写保护),亦直接删除
    -i 删除前逐一询问确认
    -r 删除目录及其下所有文件

    命令可以同时删除文件或目录

    语法: rm [-f-i-r-v][dirName/dir]
    适用对象:所有使用者(只要权限够,什么都可以删除。)
    功能:删除文件或目录

    rm -r:递归删除,和mkdir递归生成一系列目录搭配使用。

    rm -rf:递归强制删除(r递归f强制)

    [外链图片转存中…(img-N5er0VAr-1668666705727)]

    rm -rf ./* 表示删除当前所有内容。

    常用选项:
    -f 即使文件属性为只读(即写保护),亦直接删除
    -i 删除前逐一询问确认
    -r 删除目录及其下所有文件

    总结

    今天涉及到Linux操作系统的一些基本知识和少数基本操作,明天将会继续更新关于Linux的相关操作,如果有难点会画图帮助大家理解,希望对大家有所帮助,我们明天见~

  • 相关阅读:
    Spring注解详解
    WinForm应用实战开发指南 - 教你如何实现表头的全选操作?
    ESDA in PySal (5):空间数据的探索性分析:空间自相关
    一次实战压测流程及问题梳理
    Spring Cloud Alibaba(Nacos+Open Feign)微服务项目如何在本地调试,每次都调用本地的服务?
    河北吉力宝以步力宝健康鞋引发的全新生活生态商
    完整解析快速排序
    人机智能的逻辑哲学论
    【STM32学习(4)】STM32简述定时器
    基于javaweb资料分享后台管理系统
  • 原文地址:https://blog.csdn.net/MDLYB/article/details/127903417