• Linux最常用命令用法总结(精选)


    1. su

    • 普通用户切换root用户
    ubuntu@ubuntu20:~$ su
    Password: 
    root@ubuntu20:/home/ubuntu# exit
    exit
    ubuntu@ubuntu20:~$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5

    1

    2. clear

    • 清除当前终端显示的输出
    • 快捷键ctrl+L键

    3. cd

    • 改变目录
    ubuntu@ubuntu20:~/workspace$ cd ..
    ubuntu@ubuntu20:~$ cd /
    ubuntu@ubuntu20:/$ cd ~
    ubuntu@ubuntu20:~$ ls
    Desktop  Documents  Downloads  Music  Pictures  Public  Software  Templates  Videos  workspace
    ubuntu@ubuntu20:~$ pwd
    /home/ubuntu
    ubuntu@ubuntu20:~$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    2

    4. pwd

    • 显示当前工作目录
    • 执行pwd指令可立刻得知您目前所在的工作目录的绝对路径名称
    ubuntu@ubuntu20:~$ pwd
    /home/ubuntu
    ubuntu@ubuntu20:~$ 
    
    • 1
    • 2
    • 3

    5. ls

    • 列出目前工作目录所含之文件及子目录

    [语法]

    ls [-alrtAFR] [name…]

    [参数]

    • -a 显示所有文件及目录 (. 开头的隐藏文件也会列出)
    • -l 除文件名称外,亦将文件型态、权限、拥有者、文件大小等资讯详细列出
    • -r 将文件以相反次序显示(原定依英文字母次序)
    • -t 将文件依建立时间之先后次序列出
    • -A 同 -a ,但不列出 “.” (目前目录) 及 “…” (父目录)
    • -F 在列出的文件名称后加一符号;例如可执行档则加 “*”, 目录则加 “/”
    • -R 若目录下有文件,则以下之文件亦皆依序列出
    ubuntu@ubuntu20:~$ ls -a
    .   .bash_history  .bashrc  .config  Documents  .gnupg  .mozilla  Pictures  Public    .sudo_as_admin_successful  Videos      workspace
    ..  .bash_logout   .cache   Desktop  Downloads  .local  Music     .profile  Software  Templates                  .wget-hsts
    ubuntu@ubuntu20:~$ ls -l
    total 40
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Desktop
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Documents
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Downloads
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Music
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Pictures
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Public
    drwxrwxr-x 4 ubuntu ubuntu 4096 114 10:33 Software
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Templates
    drwxr-xr-x 2 ubuntu ubuntu 4096 1012  2021 Videos
    drwxrwxr-x 5 ubuntu ubuntu 4096 1027  2021 workspace
    ubuntu@ubuntu20:~$ ls -r
    workspace  Videos  Templates  Software  Public  Pictures  Music  Downloads  Documents  Desktop
    ubuntu@ubuntu20:~$ ls -t
    Software  workspace  Documents  Music  Pictures  Public  Templates  Videos  Desktop  Downloads
    ubuntu@ubuntu20:~$ ls -F
    Desktop/  Documents/  Downloads/  Music/  Pictures/  Public/  Software/  Templates/  Videos/  workspace/
    ubuntu@ubuntu20:~$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    6. touch

    • 修改文件或者目录的时间属性,包括存取时间和更改时间。若文件不存在,系统会建立一个新的文件

    [语法]

    touch [-acfm][-d<日期时间>][-r<参考文件或目录>] [-t<日期>][–help][–version][文件或目录…]

    [参数]

    • a 改变档案的读取时间记录。
    • m 改变档案的修改时间记录。
    • c 假如目的档案不存在,不会建立新的档案。与 --no-create 的效果一样。
    • f 不使用,是为了与其他 unix 系统的相容性而保留。
    • r 使用参考档的时间记录,与 --file 的效果一样。
    • d 设定时间与日期,可以使用各种不同的格式。
    • t 设定档案的时间记录,格式与 date 指令相同。
    • –no-create 不会建立新档案。
    • –help 列出指令格式。
    • –version 列出版本讯息。
    ubuntu@ubuntu20:~/Test$ ls
    ubuntu@ubuntu20:~/Test$ touch test  // 创建一个文件
    ubuntu@ubuntu20:~/Test$ ls
    test
    ubuntu@ubuntu20:~/Test$ ls -l
    total 0
    -rw-rw-r-- 1 ubuntu ubuntu 0 124 15:49 test
    ubuntu@ubuntu20:~/Test$ touch test // 修改时间属性
    ubuntu@ubuntu20:~/Test$ ls -l
    total 0
    -rw-rw-r-- 1 ubuntu ubuntu 0 124 15:49 test
    ubuntu@ubuntu20:~/Test$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    7. mkdir

    • 创建目录

    mkdir [-p] dirName

    • -p创建多级目录
    ubuntu@ubuntu20:~/Test$ mkdir a/b
    mkdir: cannot create directory ‘a/b’: No such file or directory
    ubuntu@ubuntu20:~/Test$ mkdir -p a/b
    ubuntu@ubuntu20:~/Test$ ls
    a  test
    ubuntu@ubuntu20:~/Test$ ls a/b/
    ubuntu@ubuntu20:~/Test$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    8. cp

    • 拷贝命令

    cp [options] source dest

    [参数]

    • -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合。
    • -d:复制时保留链接。这里所说的链接相当于 Windows 系统中的快捷方式。
    • -f:覆盖已经存在的目标文件而不给出提示。
    • -i:与 -f 选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答 y 时目标文件将被覆盖。
    • -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
    • -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
    • -l:不复制文件,只是生成链接文件。
    ubuntu@ubuntu20:~/Test$ ls
    a  test
    ubuntu@ubuntu20:~/Test$ cp test test1
    ubuntu@ubuntu20:~/Test$ cp a cp-a
    cp: -r not specified; omitting directory 'a'
    ubuntu@ubuntu20:~/Test$ cp a cp-a -r
    ubuntu@ubuntu20:~/Test$ ls
    a  cp-a  test  test1
    ubuntu@ubuntu20:~/Test$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    9. mv

    • 为文件或目录改名、或将文件或目录移入其它位置

    mv [options] source dest

    [参数]

    • -b: 当目标文件或目录存在时,在执行覆盖前,会为其创建一个备份。
    • -i: 如果指定移动的源目录或文件与目标的目录或文件同名,则会先询问是否覆盖旧文件,输入 y 表示直接覆盖,输入 n 表示取消该操作。
    • -f: 如果指定移动的源目录或文件与目标的目录或文件同名,不会询问,直接覆盖旧文件。
    • -n: 不要覆盖任何已存在的文件或目录。
    • -u:当源文件比目标文件新或者目标文件不存在时,才执行移动操作
    ubuntu@ubuntu20:~/Test$ ls
    a  cp-a  test  test1
    ubuntu@ubuntu20:~/Test$ mv a d
    ubuntu@ubuntu20:~/Test$ ls
    cp-a  d  test  test1
    ubuntu@ubuntu20:~/Test$ mv cp-a/ d/
    ubuntu@ubuntu20:~/Test$ ls
    d  test  test1
    ubuntu@ubuntu20:~/Test$ ls d/
    b  cp-a
    ubuntu@ubuntu20:~/Test$ mv test test2
    ubuntu@ubuntu20:~/Test$ ls
    d  test1  test2
    ubuntu@ubuntu20:~/Test$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    10. rm

    • 用于删除一个文件或者目录

    rm [option] name

    [参数]

    • -i 删除前逐一询问确认。
    • -f 即使原档案属性设为唯读,亦直接删除,无需逐一确认。
    • -r 将目录及以下之档案亦逐一删除
    ubuntu@ubuntu20:~/Test$ ls
    d  test1  test2
    ubuntu@ubuntu20:~/Test$ rm -i test1
    rm: remove regular empty file 'test1'? y
    ubuntu@ubuntu20:~/Test$ ls
    d  test2
    ubuntu@ubuntu20:~/Test$ rm test2 
    ubuntu@ubuntu20:~/Test$ rm d
    rm: cannot remove 'd': Is a directory
    ubuntu@ubuntu20:~/Test$ rm d/ -r
    ubuntu@ubuntu20:~/Test$ ls
    ubuntu@ubuntu20:~/Test$
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12

    11. tar

    • tar打包命令

    [参数]

    • -A或–catenate 新增文件到已存在的备份文件。
    • -b<区块数目>或–blocking-factor=<区块数目> 设置每笔记录的区块数- 目,每个区块大小为12Bytes。
    • -B或–read-full-records 读取数据时重设区块大小。
    • -c或–create 建立新的备份文件。
    • -C<目的目录>或–directory=<目的目录> 切换到指定的目录。
    • -d或–diff或–compare 对比备份文件内和文件系统上的文件的差异。
    • -f<备份文件>或–file=<备份文件> 指定备份文件。
    • -F或–info-script= 每次更换磁带时,就- 执行指定的Script文件。
    • -g或–listed-incremental 处理GNU格式的大量备份。
    • -G或–incremental 处理旧的GNU格式的大量备份。
    • -h或–dereference 不建立符号连接,直接复制该连接所指向的原始文- 件。
    • -i或–ignore-zeros 忽略备份文件中的0 Byte区块,也就是EOF。
    • -k或–keep-old-files 解开备份文件时,不覆盖已有的文件。
    • -K<文件>或–starting-file=<文件> 从指定的文件开始还原。
    • -l或–one-file-system 复制的文件或目录存放的文件系统,必须与tar指令执行时所处的文件系统相同,否则不予复制。
    • -L<媒体容量>或-tape-length=<媒体容量> 设置存放每体的容量,单位以1024 Bytes计算。
    • -m或–modification-time 还原文件时,不变更文件的更改时间。
    • -M或–multi-volume 在建立,还原备份文件或列出其中的内容时,采用多卷册模式。
    • -N<日期格式>或–newer=<日期时间> 只将较指定日期更新的文件保存到备份文件里。
    • -o或–old-archive或–portability 将资料写入备份文件时使用V7格式。
    • -O或–stdout 把从备份文件里还原的文件输出到标准输出设备。
    • -p或–same-permissions 用原来的文件权限还原文件。
    • -P或–absolute-names 文件名使用绝对名称,不移除文件名称前的"/"号。
    • -r或–append 新增文件到已存在的备份文件的结尾部分。
    • -R或–block-number 列出每个信息在备份文件中的区块编号。
    • -s或–same-order 还原文件的顺序和备份文件内的存放顺序相同。
    • -S或–sparse 倘若一个文件内含大量的连续0字节,则将此文件存成稀疏文件。
    • -t或–list 列出备份文件的内容。
    • -T<范本文件>或–files-from=<范本文件> 指定范本文件,其内含有一个或多个范本样式,让tar解开或建立符合设置条件的文件。
    • -u或–update 仅置换较备份文件内的文件更新的文件。
    • -U或–unlink-first 解开压缩文件还原文件之前,先解除文件的连接。
    • -v或–verbose 显示指令执行过程。
    • -V<卷册名称>或–label=<卷册名称> 建立使用指定的卷册名称的备份文件。
    • -w或–interactive 遭遇问题时先询问用户。
    • -W或–verify 写入备份文件后,确认文件正确无误。
    • -x或–extract或–get 从备份文件中还原文件。
    • -X<范本文件>或–exclude-from=<范本文件> 指定范本文件,其内含有一个或多个范本样式,让ar排除符合设置条件的文件。
    • -z或–gzip或–ungzip 通过gzip指令处理备份文件。
    • -Z或–compress或–uncompress 通过compress指令处理备份文件。
    • -<设备编号><存储密度> 设置备份用的外围设备编号及存放数据的密度。
    • –after-date=<日期时间> 此参数的效果和指定"-N"参数相同。
    • –atime-preserve 不变更文件的存取时间。
    • –backup=<备份方式>或–backup 移除文件前先进行备份。
    • –checkpoint 读取备份文件时列出目录名称。
    • –concatenate 此参数的效果和指定"-A"参数相同。
    • –confirmation 此参数的效果和指定"-w"参数相同。
    • –delete 从备份文件中删除指定的文件。
    • –exclude=<范本样式> 排除符合范本样式的文件。
    • –group=<群组名称> 把加入设备文件中的文件的所属群组设成指定的群组。
    • –help 在线帮助。
    • –ignore-failed-read 忽略数据读取错误,不中断程序的执行。
    • –new-volume-script= 此参数的效果和指定"-F"参数相同。
    • –newer-mtime 只保存更改过的文件。
    • –no-recursion 不做递归处理,也就是指定目录下的所有文件及子目录不予处理。
    • –null 从null设备读取文件名称。
    • –numeric-owner 以用户识别码及群组识别码取代用户名称和群组名称。
    • –owner=<用户名称> 把加入备份文件中的文件的拥有者设成指定的用户。
    • –posix 将数据写入备份文件时使用POSIX格式。
    • –preserve 此参数的效果和指定"-ps"参数相同。
    • –preserve-order 此参数的效果和指定"-A"参数相同。
    • –preserve-permissions 此参数的效果和指定"-p"参数相同。
    • –record-size=<区块数目> 此参数的效果和指定"-b"参数相同。
    • –recursive-unlink 解开压缩文件还原目录之前,先解除整个目录下所有文件的连接。
    • –remove-files 文件加入备份文件后,就将其删除。
    • –rsh-command=<执行指令> 设置要在远端主机上执行的指令,以取代rsh指令。
    • –same-owner 尝试以相同的文件拥有者还原文件。
    • –suffix=<备份字尾字符串> 移除文件前先行备份。
    • –totals 备份文件建立后,列出文件大小。
    • –use-compress-program=<执行指令> 通过指定的指令处理备份文件。
    • –version 显示版本信息。
    • –volno-file=<编号文件> 使用指定文件内的编号取代预设的卷册编号。
    ubuntu@ubuntu20:~/Test$ tar czvf test.tar.gz ./
    ./
    ./c
    ./a
    ./b
    tar: .: file changed as we read it
    ubuntu@ubuntu20:~/Test$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    12. ln

    • 命令是一个非常重要命令,它的功能是为某一个文件在另外一个位置建立一个同步的链接。当我们需要在不同的目录,用到相同的文件时,我们不需要在每一个需要的目录下都放一个必须相同的文件,我们只要在某个固定的目录,放上该文件,然后在 其它的目录下用ln命令链接(link)它就可以,不必重复的占用磁盘空间

    [参数]

    • -b 类似 --backup ,但不接受参数
    • -d 允许超级用户制作目录的硬链接
    • -f 强制执行
    • -i 交互模式,文件存在则提示用户是否覆盖
    • -n 把符号链接视为一般目录
    • -s 软链接(符号链接)
    • -v 显示详细的处理过程
    ubuntu@ubuntu20:~/Test$ ls
    a  b  c  test.tar.gz
    ubuntu@ubuntu20:~/Test$ ln -s test.tar.gz test1
    ubuntu@ubuntu20:~/Test$ ls
    a  b  c  test1  test.tar.gz
    ubuntu@ubuntu20:~/Test$ ls -l test
    ls: cannot access 'test': No such file or directory
    ubuntu@ubuntu20:~/Test$ ls -l
    total 4
    -rw-rw-r-- 1 ubuntu ubuntu   0 124 16:29 a
    -rw-rw-r-- 1 ubuntu ubuntu   0 124 16:29 b
    -rw-rw-r-- 1 ubuntu ubuntu   0 124 16:29 c
    lrwxrwxrwx 1 ubuntu ubuntu  11 124 16:42 test1 -> test.tar.gz
    -rw-rw-r-- 1 ubuntu ubuntu 151 124 16:29 test.tar.gz
    ubuntu@ubuntu20:~/Test$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    13. cat

    • 用于连接文件并打印到标准输出设备上,文件重定向

    cat [-AbeEnstTuv] [–help] [–version] fileName

    [参数]

    • -n 或 --number:由 1 开始对所有输出的行数编号。
    • -b 或 --number-nonblank:和 -n 相似,只不过对于空白行不编号。
    • -s 或 --squeeze-blank:当遇到有连续两行以上的空白行,就代换为- 一行的空白行。
    • -v 或 --show-nonprinting:使用 ^ 和 M- 符号,除了 LFD 和 - TAB 之外。
    • -E 或 --show-ends : 在每行结束处显示 $。
    • -T 或 --show-tabs: 将 TAB 字符显示为 ^I。
    • -A, --show-all:等价于 -vET。
    • -e:等价于"-vE"选项;
    • -t:等价于"-vT"选项;
    ubuntu@ubuntu20:~/Test$ touch file1
    ubuntu@ubuntu20:~/Test$ cat -n file1 > file2
    ubuntu@ubuntu20:~/Test$ ls
    file1  file2
    
    ubuntu@ubuntu20:~/Test$ echo 111 > file1
    ubuntu@ubuntu20:~/Test$ cat file1
    111
    ubuntu@ubuntu20:~/Test$ cat file1 > file2
    ubuntu@ubuntu20:~/Test$ cat file2
    111
    ubuntu@ubuntu20:~/Test$ cat file1 >> file2
    ubuntu@ubuntu20:~/Test$ cat file2
    111
    111
    ubuntu@ubuntu20:~/Test$ 
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    :~/Test$ touch file1
    ubuntu@ubuntu20:~/Test$ cat -n file1 > file2
    ubuntu@ubuntu20:~/Test$ ls
    file1 file2

    ubuntu@ubuntu20:~/Test$ echo 111 > file1
    ubuntu@ubuntu20:~/Test$ cat file1
    111
    ubuntu@ubuntu20:~/Test$ cat file1 > file2
    ubuntu@ubuntu20:~/Test$ cat file2
    111
    ubuntu@ubuntu20:~/Test$ cat file1 >> file2
    ubuntu@ubuntu20:~/Test$ cat file2
    111
    111
    ubuntu@ubuntu20:~/Test$

    
    关注+私信获取大量Linux干货资料和代码
    
    • 1
    • 2
  • 相关阅读:
    java计算机毕业设计VUE教育网站设计与实现源码+数据库+系统+lw文档
    企业如何避免项目失败
    excel导入导出demo笔记
    KVM虚拟机热扩容
    使用boost封装一个websocketserver类
    136. 只出现一次的数字(hot100)
    Vue 组件化
    05【数组的扩展】
    动态规划笔记+经典习题十道
    tomcat的介绍与优化
  • 原文地址:https://blog.csdn.net/tgdzsjh/article/details/128175857