美文网首页
linux基础命令

linux基础命令

作者: 我是隔壁老陈 | 来源:发表于2023-09-11 12:54 被阅读0次

    Linux基础命令

    内容整理自网络,仅供个人学习记录使用,如有侵权请联系删除。
    转载请注明出处:linux基础命令 - 简书 (jianshu.com)

    linux命令基础

    Linux命令基础格式

    command [-options] [parameter]
    
    • command:命令本身
    • -options:[可选,非必填]命令的一些选项,可以通过选项控制命令的行为细节
    • parameters:[可选,非必填]命令的参数,多数用于命令的指向目标等

    语法中的[],表示可选的意思

    ls命令入门

    ls命令的作用是列出目录下的内容,语法细节如下:

    ls [-a -l -h] [L inux路径]
    
    • -a -l -h 是可选的选项,
      -a选项表示all的意思,即列出全部文件(包括隐藏文件/文件夹)

    linux中以.开头的,表示是linux系统的隐藏文件/文件夹(只要以.开头,就能自动隐藏),只有通过-a才能查看隐藏文件夹。

    -l选项表示以列表形式展示内容,并展示更多信息。

    语法中的选项可以组合使用,比如同时使用-a和-l有三种写法:

    ls -l -a
    ls -la
    ls -al
    

    -h表示以易于阅读的形式,列出文件大小,-h必须和-l搭配使用

    • Linux路径是此命令可选的参数
      当不使用选项和参数,直接使用ls命令本体,表示:以平铺形式,列出当前工作目录下的内容

    cd pwd命令

    cd:切换当前目录
    pwd:查看当前所在工作目录

    mkdir命令

    语法:

    mkdir [-p] Linux路径
    
    • 参数必填,表示Linux路径
    • -p选项可选,表示自动创建不存在的父目录

    touch cat more命令

    touch命令:创建文件,语法如下:

    touch Linux路径
    
    • touch命令无选项,参数必填

    cat命令:查看文件内容
    more命令:查看文件内容,空格翻页,q退出查看

    • cat直接将内容全部显示
    • more支持翻页

    cp mv rm命令

    cp命令用于复制文件/文件夹,语法如下:

    cp [-r] 参数1 参数2
    
    • -r选项,可选,用于复制文件夹使用,表示递归
    • 参数1,Linux路径,表示被复制的文件或文件夹
    • 参数2,Linux路径,表示要复制去的地方

    mv命令用于移动文件/文件夹,语法如下:

    mv 参数1 参数2
    
    • 参数1,Linux路径,表示被移动的文件或文件夹
    • 参数2,Linux路径,表示要移动去的地方,<mark>如果目标不存在,则进行改名</mark>,确保目标存在

    rm用于删除文件/文件夹,语法如下:

    rm [-r -f] 参数1 参数2 ...... 参数n
    
    • 同cp命令一样,-r选项用于删除文件夹
    • -f表示force,强制删除(不会弹出提示确认信息)
      • 普通用户删除内容不会弹出提示,只有root管理员用户删除内容会有提示
      • 所以一般普通用户用不到-f选项
    • 参数1、参数2、...... 、参数n表示要删除的文件或文件夹路径,按照空格隔开

    rm命令支持通配符*,用来做模糊匹配

    • 符号*表示通配符,即匹配任意内容(包含空),示例:
      • test*,表示匹配任何以test开头的内容
      • *test,表示匹配任何以test结尾的内容
      • *test*,表示匹配任何包含test的内容

    which find命令

    which命令:Linux命令本体就是一个个的二进制可执行程序,和windows中的.exe是一个意思。
    我们可以通过which命令,查看所使用的一系列命令的程序文件放在哪里
    语法:

    which 要查找的命令
    
    witch.png

    find命令可以通过用户给定的表达式在指定目录下搜索文件,并执行指定的操作。一般语法格式如下:

    find path options [-print -exec -ok ...]
    
    • path:所要查找的目录路径,例如"."表示当前目录,"/"表示根目录
    • -print:将匹配的文件输出到标准输出
    • -exec:对匹配的文件执行该参数所指定的shell命令
    • -ok:和-exec的作用相同,只不过更加安全一点,在执行每一个命令之前,系统会让用户确定是否执行

    常用命令选项参数如下:

    • -name:按文件名查找文件
    • -type:按文件类型查找文件
    • -perm:按文件权限来查找文件
    • -prune:表示要忽略的目录
    • -depth:指定搜索顺序,从文件树的最子层目录查起
    • -user:查找属于指定用户名的所有文件
    • -group:查找属于指定用户组的所有文件
    • -size n:查找文件长度为n块的文件,默认每块512字节
    • -mtime -n/+n: 按照文件的更改时间来查找文件, -n表示文件更改时间距现在n天以内,+n表示文件更改时间距现在n天以前。
    • -atime:按照文件的访问时间来查找文件,使用与mtime相同。
    • -ctime: 按照文件的改变状态的时间来查找文件,使用与mtime相同。

    按照文件名查找文件示例:

    # 要在/root目录下查找名为find_test.txt的文件
    find /root -name find_test.txt
    
    # 忽略大小写的搜索,-name改为-iname
    find /root -iname Find_Test.txt
    
    # find支持通配符
    find /root -name *_test.txt
    
    # 按照扩展名搜索文件
    find /root -name '*.tar.gz'
    

    按照类型查找文件:

    有时需要搜索特定文件类型的文件,比如普通文件,目录或符号链接等,可以使用-type选项和以下描述符之一来指定文件类型:

    • f:常规文件
    • d:目录
    • l:符号链接文件
    • c:字符设备文件
    • b:块设备文件
    • p:管道文件
    • s:套接字文件

    例如,要在当前目录中查找所有目录:

    find . -type d
    

    按大小查找文件

    按文件大小查找文件,可以使用-size选项,可以使用以下后缀来指定文件大小:

    • b:512字节块(默认)
    • c:字节
    • K:千字节
    • M:兆字节
    • G:千兆字节

    以下命令将在/root目录下找到所有1024个字节的文件:

    find /root -size 1024c
    

    find命令还支持搜索大于或小于指定大小的文件,例如,在/root目录下搜索所有小于1MB的文件,需要使用-符号:

    find /root -size -1M
    

    搜索大于1MB的文件,则需要使用+符号:

    find /root -size +1M
    

    甚至可以搜索大小范围内的文件,例如,查找大小在1MB和2MB之间的文件:

    find /root -size +1M -size 2M
    

    按权限查找文件

    -perm选项可以按照文件权限搜索文件,例如,要在/root目录中查找权限为775的文件:

    find /root -perm 775
    

    按所有者查找文件

    要查找特定用户或组拥有的文件,可以使用-user和-group选项。

    例如,要搜索用户tigeriaf拥有的所有文件和目录,应运行:

    find / -user tigeriaf
    

    查找文件并执行指定操作

    查找所有匹配的文件,并执行指定的命令,可以使用-exec或者-ok选项,上面已经说过-exec和-ok的作用相同,只不过-ok更加安全一点,在执行每一个命令之前,系统会让用户确定是否执行。相应的格式为-exec/-ok command {} ;,"command"是要执行的命令,"{}"就是代替查到的文件。
    例如,查找所有符合*test.txt的文件并删除它们:

    find . -name *test.txt -exec rm {} \;
    # 或者
    find . -name *test.txt -ok rm {} \;
    

    grep、wc和管道符

    grep命令,可用于从文件中通过关键词过滤文件行,语法如下:

    grep [-n] 关键字 文件路径
    
    • -n,可选,表示在结果中显示匹配的行的行号(还有其他可用参数)
    • 关键字,必填,表示过滤的关键字,带有空格或其他特殊符号,建议使用“”将关键字包围
    • 文件路径,必填,表示要过滤内容的文件路径,<mark>可作为内容输入端口</mark>

    wc命令,做数量统计,可以通过wc命令统计文件的行数、单词数量等,语法:

    wc [-c -m -l -w] 文件路径
    
    • -c,统计bytes数量
    • -m,统计字符数量
    • -l,统计行数
    • -w,统计单词数量

    管道符
    管道符:|,含义是:将管道符左边命令的结果,作为右边命令的输入

    echo、tail和重定向符


    echo命令用于在命令行内输出指定内容
    当使用echo用于输出命令执行结果时,需要加上``符号,如下:

    echo `pwd`
    

    重定向符:>和>>

    • >,将左侧命令的结果,覆盖写入到符号右侧指定的文件中
    • >>,将左侧命令的结果,追加写入到符号右侧指定的文件中

    tail命令,可以查看文件尾部内容,跟踪文件的最新更改,语法如下:

    tail [-f -num] Linux路径
    
    • 参数,Linux路径表示被跟踪的文件路径
    • 选项-f,表示持续跟踪
    • 选项-num,表示查看尾部多少行,不填默认10行

    vi编辑器

    vi\vim是visual interface的简称,是Linux中最经典的文本编辑器。
    vim是的加强版本,兼容ⅵi的所有指令,不仅能编辑文本,而且还具有shell程序编辑的功能,可以不同颜色的字体来辨别语法的正确性,极大方便了程序的设计和编辑性。

    vi\vim编辑器的三种工作模式:

    • 命令模式(Command mode):命令模式下,所敲的按键编辑器都理解为命令,以命令驱动执行不同的功能。此模式下,不能自由进行文本编辑。
    • 输入模式(Insert mode):编辑模式,此模式下,可以对文件内容进行自由编辑。
    • 底线命令模式(Last line mode):以:开始,通常用于文件的保存、退出。
    • 如果文件不存在,则编辑新文件
    • 如果文件存在,则编辑源文件

    命令模式下的常见快捷键:

    模式 命令 描述
    命令模式 i 在当前光标位置进入输入模式
    命令模式 a 在当前光标位置<mark>之后</mark>进入输入模式
    命令模式 I 在当前行的开头进入输入模式
    命令模式 A 在当前行的结尾进入输入模式
    命令模式 o 在当前光标下一行进入输入模式
    命令模式 O 在当前光标上一行进入输入模式
    输入模式 esc 任何情况下输入esc都能回到命令模式
    命令模式 / 进入搜索模式
    命令模式 n 向下继续搜索
    命令模式 N 向上继续搜索

    底线命令模式支持命令如下:

    模式 命令 描述
    底线命令模式 :wq 保存并退出
    底线命令模式 :q 仅退出
    底线命令模式 :q! 强制退出
    底线命令模式 :w 仅保存
    底线命令模式 :set nu 显示行号
    底线命令模式 :set paste 设置粘贴模式

    ln命令创建软连接

    在系统中创建软连接,可以将文件、文件夹链接到其他位置。类似windows的快捷方式。语法:

    ln -s 参数1 参数2
    
    • -s选项,创建软连接
    • 参数1:被链接的文件或文件夹
    • 参数2:要链接去的目的地

    相关文章

      网友评论

          本文标题:linux基础命令

          本文链接:https://www.haomeiwen.com/subject/iiszmdtx.html