Linux学习一之常用命令

一. 命令的基本格式

         1. 命令的提示符 

             

      • [ ]:这是提示符的分隔符号,没有特殊含义。
      • root:显示的是当前的登录用户
      • @:分隔符号,没有特殊含义。
      • localhost:当前系统的简写主机名(完整主机名是 localhost.localdomain)
      • ~:代表用户当前所在的目录,此例中用户当前所在的目录是家(home)目录
      • #:命令提示符。超级用户是#,普通用户是$

         2. 命令的基本格式

              

二. 目录操作命令

         1.  ls :主要作用是显示目录下的内容( 英文原意:list )。

                          所在路径:/bin/ls 

                          执行权限:所有用户  

           

            选项: 

      •   -a:显示所有文件 
      •   --color=when: 支持颜色输出,when 的值默认是 always(总显示颜色),也可以是

                                         never(从不显示颜色)和 auto(自动)

      •   -d:显示目录信息,而不是目录下的文件
      •   -h:人性化显示,按照我们习惯的单位显示文件大小
      •    -i: 显示文件的 i 节点号
      •    -l: 长格式显示  

            

      •  第一列:权限。(下面笔记会记录)
      •  第二列:引用计数。文件的引用计数代表该文件的硬链接个数,而目录的引用计数代表该目录
                                         有多少个一级子目录。
      •  第三列:所有者,也就是这个文件属于哪个用户。默认所有者是文件的建立用户。
      •  第四列:所属组。默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组。
      •  第五列:大小。默认单位是字节。
      •  第六列:文件修改时间。文件状态修改时间或文件数据修改时间都会更改这个时间,注意这个
                                                时间不是文件的创建时间。
      •  第七列:文件名

      2. cd :切换所在目录(英文原意:change directory)

                       所在路径:Shell内置命令

                       执行权限:所有用户

                   cd ~ :  代表用户的家目录

                   cd -  :  代表上级所在目录

                   cd .  :  代表当前目录

                   cd .. :  代表上级目录

         3. pwd  :查询所在的工作目录(英文原意:print name of current/working directory)

                          所在路径:/bin/pwd

                          执行权限:所有用户

         4.  mkdir  : 创建空目录(英文原意:make directories)

                            所在路径:/bin/mkdir

                       执行权限:所有用户

                   mkdir  abc/def   若abc目录不存在,则产生错误

                   mkdir -p  abc/def  若abc目录不存在,则自动新建(mkdir -p:递归建立所需目录

         5.  rmdir :删除目录(英文原意:remove empty directories)

                            所在路径:/bin/rmdir

                            执行权限:所有用户 

                   rmdir -p   递归删除目录( 与↑类似 )

                   rmdir 命令的作用十分有限,因为只能删除空目录,所以一旦目录中有内容,就会报错。                           

                            后续不论删除的是文件还是目录,都会使用 rm命令

 

三. 文件操作命令

        1. touch :创建空文件或修改文件时间戳(英文原意:change files timestamps)

                          所在路径:/bin/touch

                          用户权限:所有用户

        2. stat :显示文件或文件系统的详细信息(英文原意:display file or file system status)

                       所在路径:/usr/bin/stat

                       用户权限: 所有用户

                       

       3. cat  : 查看文件内容(英文原意:concatenate files and print on the standard output)

                    所在路径:/bin/cat

                    执行权限:所有用户

                    

                     选项:

      •    -A: 相当于-vET 选项的整合,用于列出所有隐藏符号
      •    -E: 列出每行结尾的回车符$
      •    -n: 显示行号
      •    -T: 把 Tab 键用^I 显示出来
      •    -v: 列出特殊字符

      
        4. more : 分屏显示文件内容(英文原意:file perusal filter for crt viewin) 

                        所在路径:/bin/more

                        执行权限:所有用户

                  more 命令比较简单,一般不用什么选项,命令会打开一个交互界面,可以识别一些交互命令。

                 常用的交互命令如下:

      • 空格键:向下翻页。
      • b:向上翻页。
      • 回车键:向下滚动一行。
      • /字符串:搜索指定的字符串。
      • q:退出。

  5. less分行显示文件内容(英文原意:opposite of more) 

                      所在路径:/usr/bin/less

                 执行权限:所有用户 

       6. head:显示文件开头的内容(英文原意:output the first part of files)

                       所在路径:/usr/bin/head

                       执行权限:所有用户

                       

                       选项:

        • -n  行数:从文件头开始,显示指定行数
        •   -v   :显示文件名

       7. tail : 显示文件结尾的内容(英文原意:output the last part of files)

                    所在路径:/usr/bin/tail

                    执行权限:所有用户

                    
                 选项:

        •  -n  行数: 从文件结尾开始,显示指定行数、
        •  -f  : 监听文件新增的内容

       8. ln : 在文件之间建立链接(英文原意:make links between files)

                    所在路径:/bin/ln

                    执行权限:所有用户

                    

                 选项:

        •  -s: 建立软链接文件。如果不加“-s”选项,则建立硬链接文件

        •  -f : 强制。如果目标文件已经存在,则删除目标文件后再建立链接文件

 

                     创建硬链接:
                                         

                                         #建立硬链接文件,目标文件没有写文件名,会和原文件名一致

                                         #也就是 /root/cangls/tmp/cangls 是硬链接文件

                    创建软链接: 

                                        

                                        #建立软链接文件

                    硬链接与软链接的区别:

                            硬链接:

        • 源文件和硬链接文件拥有相同的 Inode 和 Block
        • 修改任意一个文件,另一个都改变
        • 删除任意一个文件,另一个都能使用
        • 硬链接标记不清,很难确认硬链接文件位置,不建议使用
        • 硬链接不能链接目录
        • 硬链接不能跨分区

                            软链接:

        • 软链接和源文件拥有不同的 Inode 和 Block
        • 删除软链接,源文件不受影响;删除源文件,软链接不能使用
        • 软链接没有实际数据,只保存源文件的 Inode,不论源文件多大,软链接大小不变
        • 软链接的权限是最大权限 lrwxrwxrwx.,但是由于没有实际数据,最终访问时需要参考源文件权限
        • 软链接可以链接目录
        • 软链接可以跨分区
        • 软链接特征明显,建议使用软连接

                            软链接一定要用绝对路径!

 

四. 目录和文件都能操作的命令

       1. rm :  删除文件或目录(英文原意:remove files or directories)

                     所在路径:/bin/rm

                执行权限:所有用户  

                  

                     选项:

        • -f: 强制删除(force)
        •  -i: 交互删除,在删除之前会询问用户
        •  -r: 递归删除,可以删除目录(recursive)

        2. cp :  复制文件和目录(英文原意:copy files or directories)

                   所在路径:/bin/cp

         执行权限:所有用户

                   

                   选项:

        •   -a: 相当于-dpr 选项的集合 ↓
        •   -d: 如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接
        •    -i: 询问,如果目标文件已经存在,则会询问是否覆盖
        •   -p: 复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间)
        •    -r: 递归复制,用于复制目录

        3. mv :移动文件或改名

                      所在路径:/bin/mv

       执行权限:所有用户

                      

                      选项:

        •  -f: 强制覆盖,如果目标文件已经存在,则不询问,直接强制覆盖
        •  -i: 交互移动,如果目标文件已经存在,则询问用户是否覆盖(默认选项)
        •  v: 显示详细信息

五. 基本权限管理

          1. 权限的介绍

                    权限位的含义

                    前面ls -l 命令 长格式显示的第一列就是文件的权限,例如:

                       

                       第一列的权限位如果不计算最后的“.”(这个点的含义下面会学到),则共有 10 位,这 10位权限位的含义如

               下图所示:

                              

      •  第1 位代表文件类型。Linux 不像 Windows 使用扩展名表示文件类型,而是使用权限位的第 1   

                                 位表示文件类型。虽然 Linux 文件的种类不像 Windows 中那么多,但是分类也不少,详细情况

                                 可以使用“info ls”命令查看。一些常见的文件类型:
              “-”:普通文件。
              “b”:块设备文件。这是一种特殊设备文件,存储设备都是这种文件,如分区文件/dev/sda1
                就是这种文件。
              “c”:字符设备文件。这也是特殊设备文件,输入设备一般都是这种文件,如鼠标、键盘
                等。
              “d”:目录文件。Linux 中一切皆文件,所以目录也是文件的一种。
              “l”:软链接文件。
              “s”:套接字文件。这也是一种特殊设备文件,一些服务支持 Socket 访问,就会产生这样
                的文件

      •    第 2~4 位代表文件所有者的权限。
                 r:代表 read,是读取权限。
                w:代表 write,是写权限。
            x:代表 execute,是执行权限。
            如果有字母,则代表拥有对应的权限;如果是“-”,则代表没有对应的权限。

      •    第 5~7 位代表文件所属组的权限,同样拥有“rwx”权限。
      •    第 8~10 位代表其他人的权限,同样拥有“rwx”权限。

             2. 基本权限的作用 

                  2.1 权限含义的解释  

                        首先,读、写、执行权限对文件和目录的作用是不同的。

      • 权限对文件的作用
        - 读(r):对文件有读(r)权限,代表可以读取文件中的数据。如果把权限对应到命令上,那么一旦对

                                               文件有读(r)权限,就可以了对文件执行cat、more、less、head、tail等文件查看命令

                              - 写(w):对文件有(w)权限,代表可以修改文件中的数据。如果把权限对应到命令上,那么一旦对文

              件有写(w)权限,就可以对文件执行vim、echo等修改文件数据的命令注意对文件有写

                                                 权限,是不能删除文件本身的,只能修改文件中的数据。如果想要删除文件,则需要对文件的

                                                 上级目录拥有写权限

                              - 执行(x):对文件有执行(x)权限,代表文件拥有了执行权限,可以运行。在Linux中,只要文件有执行

                                                   权限,这个文件就是执行文件了。只是这个文件到底能不能正确执行,不仅需要执行(x)权限,

                                                   还要看文件中的代码是不是正确的语言代码。对文件来说,执行(x)权限是最高权限。

      • 权限对目录的作用

                              - 读(r):对目录有读(r)权限,代表可以查看目录下的内容,也就是可以查看目录下有哪些子文件和子目

                                                录。如果把权限对应到命令上,那么一旦对目录拥有了读(w)权限,就可以在目录下执行ls命令,

                                                查看目录下的内容了。

                              - 写(w):对目录有写(w)权限,代表可以修改目录下的数据,也就是可以在目录中新建、删除、复制、剪

                                                切子文件或子目录。如果把权限对应到命令上,那么一旦对目录拥有了写(w)权限,就可以在目录

                                                下执行touch、rm、cp、mv命令,对目录来说,写(w)权限是最高权限。

                              - 执行(x):目录是不能运行的,那么对目录拥有执行(x)权限,代表可以进入目录。如果把权限对应到命令,

                                                    那么一旦对目录拥有了执行权限,就可以了对目录执行cd命令,进入目录。

        2.2 目录的可用权限

      • 0:任何权限都不赋予。
      • 5:基本的目录浏览和进入权限。
      • 7:完全权限。

     3. 基本权限命令

                 3.1 chmod :  修改文件的权限模式(英文原意:change file mode bits)

                                 所在路径:/bin/chmod

           执行权限:所有用户

                                    

           选项:

          •  -R: 递归设置权限,也就是给子目录中的所有文件设定权限 

           权限模式:

                                               [用户身份][[赋予方式][权限]]

          •  用户身份          

                                  u:代表所有者(user)

                   g:代表所属组(group)

                   o:代表其他人(other)
                             a:代表全部身份(all)

          • 赋予方式                

                   +:加入权限
                    -:减去权限
                   =:设置权限

          • 权限

                 r:读取权限(read)
                w:写权限(write)
                   x:执行权限(execute)

                                   举例:chmod u+x  bcd   赋予bcd文件所有者执行权限

                                              chmod g-x , o+w  bcd  (这种命令书写比较麻烦,一般不用)                                 

          数字权限

          • 4:代表“ r ”权限
          • 2:代表“ w ”权限
          • 1:代表“ x ”权限

             数字权限的赋予方式更加简单,需要对这几个数字更加熟悉。其实常用权限也并不多,

             有如下几个:(数字顺序代表:所有者 所属者 其他人)

          • 644:这是文件的基本权限,代表所有者拥有读、写权限,而所属组和其他人拥有只读权限。
          • 755:这是文件的执行权限和目录的基本权限,代表所有者拥有读、写和执行权限,而所属组
                      和其他人拥有读和执行权限

          • 777:这是最大权限。在实际的生产服务器中,要尽力避免给文件或目录赋予这样的权限,这
                      会造成一定的安全隐患

                       注:普通用户可以修改所有者是自己的文件的权限   (chmod 755 test)  

            4.  所有者和所有组命令

                 4.1 chown :修改文件和目录的所有者和所属组(英文原意:change file owner and group) 

                                       所在路径:/bin/chown

              执行权限:所有用户

            

                                       选项:

          •  -R: 递归设置权限,也就是给子目录中的所有文件设置权限      

           chown user1 bcd  修改bcd文件的所有者为:user1

              chgrp  user1 bcd  修改bcd文件的所属组为:user1   这两条命令可用下面一条命令表示:

                                       chown user1: user1 bcd

                       注:普通用户不能修改文件的所有者(哪怕文件是属于这个普通用户的),只有超级用户才能修改所有者

                  4.2 chgrp:修改文件和目录的所属组(英文原意:change group ownership)

            所在路径:/bin/chgrp

            执行权限:所有用户

 

 六. 帮助命令

        1. man :显示联机帮助手册(英文原意:format and display the on-line manual pages)

                        所在路径:/usr/bin/man

         执行权限:所有用户

                  1.1 命令格式

                        

                        选项:

        • -f :查看命令拥有哪个级别的帮助
        • -k:查看和命令相关的所有帮助

                  1.2 man命令的快捷键

                        

                  1.3 man命令的帮助级别

                        

   2. info:info 命令的帮助信息是一套完整的资料,每个单独命令的帮助信息只是这套完整资料中的某一

                      个小章节。

        3. help:显示Shell内置命令的帮助

                       所在路径:Shell内置命令

           执行权限:所有用户

                       可以使用 type 命令来区分内置命令与外部命令

        4. --help:绝大多数命令都可以使用“--help”选项来查看帮助,这也是一种获取帮助的方法

                          

                          这种方法非常简单,输出的帮助信息基本上是 man 命令的信息简要版。

七. 搜索命令

        1. whereis:查找二进制命令、源文件和帮助文档的命令

         英文原意:locate the binary, source, and manual page files for a command

                             所在路径:/usr/bin/whereis

                             执行权限:所有用户

        2. which:列出命令的所在路径

                          英文原意:show the full path of(shell) commands

                          所在路径:/usr/bin/which

                          执行权限:所有用户

                          which 也是搜索系统命令的命令。和 whereis 命令的区别在于:

        • whereis 命令可以在查找到二进制命令的同时,查找到帮助文档的位置;
        • which 命令在查找到二进制命令的同时,如果这个命令有别名,则还可以找到别名命令。

       3. locate:按照文件名搜索文件

                3.1  基本用法

                         英文原意:find files by name

                         所在路径:/usr/bin/locate

          执行权限:所有用户

      • 优点:按照数据库搜索,搜索速度快,消耗资源小。数据库位置/var/lib/mlocate/mlocate.db;

        若当时新建文件后查找,可强制更新数据库(命令:updatedb)  或 重新连接服务进行查找。

      • 缺点:只能按照文件名来搜索文件,而不能执行更复杂的搜索,比如按照权限、大小、修改

                  时间等搜索文件。

                3.2  配置文件

                       

    

        4. find:在目录中搜索文件       

                      英文原意:search for files in a directory hierarchy    

                      所在路径:/bin/find

                      执行权限:所有用户

               4.1 按照文件名搜索

                     

                     选项:

      •  -name: 按照文件名搜索
      •  -iname: 按照文件名搜索,不区分文件名大小写
      •  -inum: 按照 inode 号搜索 (ls -i abc查看abc的inode)

                     举例: find  .  -name abc 搜索当前目录下的abc文件

               4.2 按照文件大小搜索                   

           

                     选项:

      • -size [+|-]大小: 按照指定大小搜索文件

               “+” 的意思是搜索比指定大小还要大的文件,“-” 的意思是搜索比指定大小还要小的文件。

      find命令的单位:

                            

                4.3 按照修改时间搜索

                     

                      选项:

      • -atime [+|-]时间: 按照文件访问时间搜索
      • -mtime [+|-]时间: 按照文件数据修改时间搜索
      • -ctime [+|-]时间: 按照文件状态修改时间搜索

                         “[+|-]”:     

                                          -5:代表 5 天内修改的文件

                 5:代表前 5~6 天那一天修改的文件。

                                          +5:代表 6 天前修改的文件。

                 4.4 按照权限搜索 

                       

                       选项:

      •  -perm 权限模式: 查找文件权限刚好等于“权限模式”的文件     
      • -perm -权限模式: 查找文件权限全部包含“权限模式”的文件
      • +perm +权限模式: 查找文件权限包含“权限模式”的任意一个权限的文件

                         举例   +444 可以搜到600  的权限文件  

                                   -444  搜不到600 ,可以搜到 644  

                 4.5 按照所有者和所属组搜索

                       选项:

      • -uid 用户 ID: 按照用户 ID 查找所有者是指定 ID 的文件
      • gid 组 ID: 按照用户组 ID 查找所属组是指定 ID 的文件
      • -user 用户名: 按照用户名查找所有者是指定用户的文件
      • -group 组名: 按照组名查找所属组是指定用户组的文件
      • -nouser: 查找没有所有者的文件

       按照所有者和所属组搜索时,“-nouser”选项比较常用,主要用于查找垃圾文件(外来文件)。

                 4.6 按照文件类型搜索

                       选项:

      • -type d: 查找目录
      • -type f: 查找普通文件
      • -type l: 查找软链接文件

                 4.7 使用逻辑运算符搜索

                       选项:

      • -a:and逻辑与
      • -o:or逻辑或
      • -not:not逻辑非

                       1) -a:and逻辑与

                             find命令也支持逻辑与运算符选项,其中-a代表逻辑与运算,也就是-a的两个条件都成立,find搜索的结果才成立。   

                             例:find . -size +2k -a -type f    在当前目录下搜索大于 2KB ,并且文件类型是普通文件的文件

                       2)-o:or逻辑或

                             -o选线代表逻辑或运算,也就是-o的两个条件只要有一个成立,find命令就可以了找到结果。

                             例:find . -name laker -o -name heat 在当前目录下搜索文件名要么是 laker 的文件,要么是 heat 的文件

                       3)-not:not逻辑非

                             -not是逻辑非,也就是取反的意思。

                             例:find . -not -name lakers   在当前目录下搜索文件名不是 lakers的文件

                 4.8 其他选项

                       1)-exec选项:

                            

                            作用:把 find 命令的结果交给由“-exec”调用的命令 2 来处理。“{}”就代表 find 命令的查找结果。

              

                    2)-ok选项

                           “-ok”选项和“-exec”选项的作用基本一致,区别在于:“-exec”的命令 2 会直接处理,而不询

                            问;“-ok”的命令 2 在处理前会先询问用户是否这样处理,在得到确认命令后,才会执行。

        5. grep:在文件中提取和匹配符合条件的字符串行

                        英文原意:global search regular expression(RE) and print out the line

         所在路径:/bin/grep

                        执行权限:所有用户
                        

                        选项:

      • -i:忽略大小写
      • -n:输出行号
      • -v:反向查找
      • --color==auto:搜索出的关键字用颜色显示

                        1)find命令与grep命令的区别:

         find:find 命令用于在系统中搜索符合条件的文件名,如果需要模糊查询,则使用通配符进行匹配,通配符

                       是完全匹配

                             grep:grep 命令用于在文件中搜索符合条件的字符串,如果需要模糊查询,则使用正则表达式进行匹配,

                                       正则表达式是包含匹配

                       2)通配符与正则表达式的区别:

                                通配符:用于匹配文件名,完全匹配

                                              

                                              举例:find . -name abc      ./abc                     

                                                        find . -name "abc*"   ./abcd   ./abc

                                                        find . -name "a?c"     ./acc    ./abc

 

                               正则表达式:用于匹配字符串,包含匹配

                                              

                                              举例:grep "aa*" abc   aaaaaaa    abc1232   123abc

                                                        grep "^aa*" abc  aaaaaaa   abc1232

        6. 管道符:  | 

 

                   命令格式: 命令1  |  命令2

                   命令 1 的正确输出作为命令 2 的操作对象

               例1:   经常需要使用 “ll” 命令查看文件的长格式,不过在有些目录中文件众多,比如/etc/

                           目录,使用“ll”命令显示的内容就会非常多,只能看到最后的内容,而不能看到前面输出的内容。

          more 命令可以分屏显示文件内容,可是怎么让 more 命令分屏显示命令的输出呢?

                      一种笨方法是    ll -a /etc/ > /root/testfile (用输出重定向,把 ll 命令的输出保存到 /root/testfile 文件中)

                                                    more /root/testfile 

                           管道符的操作相比起来就比较简单了: ll -a /etc/  |  more

               例2:   在命令 ll /etc/的结果中搜索 yum 的文件名,应该使用 find 命令?还是 grep 命令?

                           ll -a /etc/ | grep yum

               例3:   netstat 命令

                           

                           选项:

        • -a: 列出所有网络状态,包括 Socket 程序
        • -c 秒数: 指定每隔几秒刷新一次网络状态
        • -n: 使用 IP 地址和端口号显示,不使用域名与服务名
        • -p: 显示 PID 和程序名
        • -t: 显示使用 TCP 协议端口的连接状况
        • -u: 显示使用 UDP 协议端口的连接状况
        • -l: 仅显示监听状态的连接
        • -r: 显示路由表

          netstat -tuln | grep 80

                                   udp 0 0 0.0.0.0:800 0.0.0.0:* 
               udp 0 0 :::800

                           如果想知道具体的网络连接数量,就可以再使用 wc 命令统计行数

                             netstat -an | grep "ESTABLISHED" | wc -l

        7. 命令的别名

                 alias:查询命令的别名

                 alias 别名='原命令':设定命令别名

                 用命令定义的别名,是临时生效的,要想永久生效,需要写入环境变量配置文件~/.bashrc

        8. 常用快捷键命令

                

        

八. 压缩和解压缩命令

          1. “.zip”格式

              1.1 “.zip”格式的压缩命令

                     zip:压缩文件或目录

                             英文原意:package and compress(archive)files

                             所在路径:/usr/bin/zip

                             执行权限:所有用户

                             

                             选项:

        •  -r:压缩目录

         zip ana.zip anaconda-ks.cfg

              1.2 “.zip”格式的解压缩命令

                     unzip:列表、测试和提取压缩文件中的文件

                                  英文原意:list,test and extract compressed files in a ZIP archive

                                  所在路径:/usr/bin/unzip

           执行权限:所有用户

                                  

                                  选项:

        • -d: 指定解压缩位置

              unzip -d /tmp/ ana.zip

           2. “.gz” 格式   不会打包

               2.1 “.gz” 格式的压缩命令

                     gzip:压缩文件或目录

                                英文原意:compress or expand files

                                所在路径:/bin/gzip

                                执行权限:所有用户

                                

                                选项:

        • -c: 将压缩数据输出到标准输出中,可以用于保留源文件
        • -d: 解压缩
        • -r: 压缩目录

              2.2 “.gz” 格式的解压缩命令

                    gunzip:解压缩文件或目录

                                   英文原意:compress or expand files

                                   所在路径:/bin/gunzip

          执行权限:所有用户

                           以下两个命令都可以解压缩“.gz”格式

                                   gunzip anaconda-ks.cfg.gz

          gzip -d anaconda-ks.cfg.gz

           3. “.bz2” 格式 不能压缩目录

                   .bz2”格式是 Linux 的另一种压缩格式,从理论上来讲,“.bz2”格式的算法更先进、压缩比更

               好;而“.gz”格式相对来讲压缩的时间更快。 

               3.1 “.bz2”格式的压缩命令

                     bzip2 .bz2 格式的压缩命令

                    英文原意:a block-sorting file compressor

                                   所在路径:/usr/bin/bzip2

                                   执行权限:所有用户

                              

                                   选项:

        • -d: 解压缩
        • -k: 压缩时,保留源文件
        • -v:显示压缩的详细信息 

                                  bzip2 anaconda-ks.cfg 压缩成.bz2格式

                                  bzip2 -k anaconda-ks.cfg  保留源文件压缩

               3.2 “.bz2”格式的解压缩命令

                     bunzip2:.bz2格式的解压缩命令

                                      英文原意:a block-sorting file compressor

             所在路径:/usr/bin/bunzip2

                                      执行权限:所有用户

                               以下两个命令都可以解压缩“.bz2”格式

                                      bunzip2 anaconda-ks.cfg.bz2

             bzip2 -d anaconda-ks.cfg.bz2

           4. “.tar”格式打包不会压缩

               “.tar”格式的打包和解打包都使用 tar 命令,区别只是选项不同。

               tar:打包与解打包命令

                  所在路径:/bin/tar

        执行权限:所有用户

                       

                       选项:

      • -c: 打包
      • -x: 解打包
      • -f: 指定压缩包的文件名。压缩包的扩展名是用来给管理员识别格式的,所以一定
               要正确指定扩展名

      • -v: 显示打包/解打包文件过程
      • -t: 测试,就是不解打包,只是查看包中有哪些文件
      • -C(大) 目录: 指定解打包位置

                          tar -cvf anaconda-ks.cfg.tar anaconda-ks.cfg   打包

                          tar -xvf anaconda-ks.cfg.tar  解打包

           5.  “.tar.gz ”“.tar.bz2 ”格式

      使用 tar 命令直接打包压缩

                       

                       选项:

      • -z: 压缩和解压缩“.tar.gz”格式
      • -j: 压缩和解压缩“.tar.bz2”格式

                           tar -zcvf  tmp.tar.gz /tmp/   把/tmp/目录直接打包压缩为“.tar.gz”格式

          tar -zxvf tmp.tar.gz   解压缩与解打包“ .tar.gz ”格式

            tar -jcvf tmp.tar.bz2 /tmp/   把/tmp/目录直接打包压缩为“.tar.bz2”格式

         tar -jxvf tmp.tar.bz2   解压缩与解打包“ .tar.bz2 ”格式

                           tar -ztvf test.tar.gz      只查看不解压

         tar -zxvf test.tar.gz -C /tmp  解压缩到指定位置

         tar -zxvf test.tar.gz -C /tmp  test/cde  只解压压缩包中的特定文件,到指定位置

 

九. 关机和重启命令

      1. sync:刷新文件系统缓冲区

                     英文原意: flush the system buffers

      所在路径:/bin/sync

      执行权限:所有用户

      2. shutdown:关机和重启

                     英文原意:bring the system down

           所在路径:/sbin/shutdown

      执行权限:超级用户

                     

                     选项:

      •  -c:取消已执行的shutdown命令
      • -h:关机
      • -r:重启

      3. reboot:重启

      4. haltpoweroff

                   这两个都是关机命令,直接执行即可。这两个命令不会完整关闭和保存系统的服务,不建议使用。

      5. init

                   init 是修改 Linux 运行级别的命令,也可以用于关机和重启。这个命令并不安全,不建议使用。

 

十. 常用网络命令

       1. 配置IP地址

           1.1 配置IP地址

                 配置IP地址有两种方法:

      1)setup工具

                     2)vi /etc/sysconfig/network-scripts/ifcfg-eth0     手动修改配置文件

           1.2 重启网络命令

                 service network restart

       2. ifconfig:配置网络接口

                            英文原意:configure a network interface

             所在路径:/sbin/ifconfig

        执行权限:超级用户

                  ifconfig 命令最主要的作用就是查看 IP 地址的信息,直接输入 ifconfig 命令即可。

                            

       3. ping:向网络主机发送ICMP请求

                      英文原意:send ICMP ECHO_REQUEST to network hosts

                      所在路径:/bin/ping

       执行权限:所有用户

            

                     选项:

      •  -b:后面加入广播地址,用于对整个网络进行探测
      •  -c 次数:用于指定ping次数
      •  -s 字节:指定探测包的大小

       4.netstat:输出网络连接、路由表、接口统计、伪装连接和组播成员   

                          英文原意:Print network connections, routing tables, interface statistics,

                                            masquerade connnetcions, and multicast memberships

        所在路径:/bin/netstat

             执行权限:所有用户

        netstat 是网络状态查看命令,既可以查看到本机开启的端口,也可以查看有哪些客户端连接。

                       

                         选项:

      • -a:列出所有网络状态,包括Socket程序
      • -c 秒数:指定每隔几秒刷新一次网络状态
      • -n:使用IP地址和端口号显示,不使用域名和服务名
      • -p:显示PID和程序名
      • -t:显示使用TCP协议端口的连接状况
      • -u:显示使用UDP协议端口的连接状况
      • -l:仅显示监听状态的连接
      • -r:显示路由表

       5. write:向其他用户发送消息

                       英文原意:send a message to another user 

        所在路径:/usr/bin/write

        执行权限:所有用户

                       

                       向在pts/1(远程终端1)登录的user1用户发送消息,使用“Ctrl+D”保存发送的数据

       6. wall: write 命令用于给指定用户发送信息

                      wall命令用于给所有登录用户发送消息,包括自己

                      

       7. mail:发送和接收电子邮件   

                      英文原意:send and receive Internet mail   

                      所在路径:/bin/mail 

       执行权限:所有用户

                      7.1 给其他用户发送邮件

                               

                            接受到的邮件都保存在 “/var/spool/mail/用户名”中

                      7.2 把某个文件的内容发送给指定用户

                           

                      7.3 查看已经接收的邮件:

               在命令行中执行 mail 命令,进入 mail 的交互命令中,可以在这里查看已经接收到
                            的邮件

                            

                            N 表示未读邮件

                            常用交互命令:

        • headers:列出邮件标题列表,直接输入“h”命令即可
        • delete:删除指定邮件。比如想要删除第二封邮件,可以输入“d 2”
        • save:保存邮件。可以把指定邮件保存成文件,如“s 2 /tmp/test.mail”
        • quit:退出,并把已经操作过的邮件进行保存。比如移除已删除邮件、保存已阅读邮件等
        • exit: 退出,但是不保存任何操作

                             

十一. 系统痕迹命令

                  系统中有一些重要的痕迹日志文件,如/var/log/wtmp、/var/run/utmp、/var/log/btmp、/var/log/lastlog

          等日志文件,用 vim 打开的这些文件是二进制乱码。这是由于这些日志中保存的是系统的重要登录痕迹,包

          括某个用户何时登录了系统,何时退出了系统,错误登录等重要的系统信息。所以这些重要的痕迹日志,只

          能通过对应的命令来进行查看。

          1. w:显示登录用户

                    英文原意:Show who is logged on and what are they doing

                    所在路径:/usr/bin/w

          执行权限:所有用户

                    w 命令是显示系统中正在登陆的用户信息的命令,这个命令查看的痕迹日志是/var/run/utmp

      

                    内容信息:

                       第一行:

                       14:00:48                          ------   系统当前时间

                       up 319 days,3:45             ------   系统的运行时间

                       1 user                                   ------   当前登录了一个用户

                       load average:0.00,0.00,0.00         ------   系统在之前 1 分钟、5 分钟、15 分钟的平均负载。如果 CPU 是单核的,则这个数值

                         超过 1 就是高负载;如果 CPU 是四核的,则这个数值超过 4 就是高负载

                       第二行:

                       USER                ------   当前登录的用户

                       TTY                   ------   登录的终端

                       FROM               ------   登录的IP地址,如果是本地终端,则是空

                       LOGIN@           ------   登陆时间 

                       IDLE               ------   用户闲置时间

                       JCPU                 ------  所有的进程占用的CPU时间

                       PCPU            ------  当前进程占用的CPU时间

                       WHAT                ------   用户正在进行的操作

          2. who

                      who 命令和 w 命令类似,用于查看正在登陆的用户,但是显示的内容比较简单,也是查看

              /var/run/utmp 日志

                     

          3. last

                    查看系统所有登陆过的用户信息的,包括正在登陆的用户和之前登陆的用户。这个命

             令查看的是/var/log/wtmp 痕迹日志文件.

                    

     4. lastlog

                查看系统中所有用户最后一次的登陆时间的命令,他查看的日志是/var/log/lastlog文件

                   

          5. lastb 

                   查看错误登陆的信息日志,查看的是/var/log/btmp 痕迹日志              

                        

 

 

 

 学习来源:尚硅谷-云计算-Linux系统管理(沈超老师)                  

posted @ 2019-05-22 21:24  乐癌晚期患者  阅读(531)  评论(0编辑  收藏  举报