[000-01-001].第4节:Linux常用的操作命令

我的后端学习大纲

我的Linux学习大纲


1.Linux命令说明:

1.1.命令的提示符:

在这里插入图片描述

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

1.2.命令基本格式:

在这里插入图片描述

  • 1.无论是什么命令,用于什么用途,在Linux中,命令有其通用的格式:
    • command: 命令本身
    • -options:命令的一些选项,是[可选,非必填],可以通过选项控制命令的行为细节
    • parameter:[可选,非必填]命令的参数,多数用于命令的指向目标等
  • 2.语法中的[],表示可选的意思

2.帮助类指令:

2.1.命令:man

  • 1.功能描述:获得帮助信息
  • 2.基本语法:- man [选项] 命令
  • 3.选项:
    • 数字:查看指定级别的帮助
      在这里插入图片描述
    • -f:查看命令拥有哪个级别的帮助
    • -k:查看和命令相关的所有帮助
  • 4.操作快捷键:
    在这里插入图片描述
    在这里插入图片描述
  • 5.实例:例如查看ls 命令的帮助信息:man ls
    在这里插入图片描述

2.2.命令:help

  • 1.功能:
    • 只能获取Shell内置命令的帮助
    • 功能描述:显示Shell内置命令的帮助。可以使用type命令来区分内置命令与外部命令
  • 2.语法:help 命令
  • 3.说明:
    • --help选项:绝大多数命令都可以使用“–help”选项来查看帮助,这也是一种获取帮助的方法
    • 输出的帮助信息基本上是man命令的信息简要版

2.3.命令:info


3.目录类指令:

3.1.命令:pwd:

  • 1.功能:展示当前工作目录
  • 2.语法:ls [选项] [目录或是文件]
  • 3.演示:
    在这里插入图片描述

3.2.命令:ls:

  • 1.功能:列出文件夹和文件信息
  • 2.语法:ls [-l -h -a] [参数]
  • 3.选项:
    • -l,以列表形式查看
    • -h配合-l,以更加人性化的方式显示文件大小单位
    • -a,显示隐藏文件
  • 4.参数:
    • 被查看的文件夹,不提供参数,表示查看当前工作目录
  • 5.演示:
    • 通过ls / 列出了根目录的内容:
      在这里插入图片描述
  • 6.其他说明:
    • 查看隐藏文件、文件夹,默认不显示出来,需要-a选项才可查看到
    • 在Linux中以.开头的,均是隐藏的
    • 语法中的选项是可以组合使用的,比如学习的-a和-l可以组合应用。
      • ls -l -a
      • ls -la
      • ls -al
    • ls -la查询结果中各列的含义:
      • 第一列:权限。具体权限的含义后面会介绍
      • 第二列:引用计数。文件的引用计数代表该文件的硬链接个数,而目录的引用计数代表该目录有多少个一级子目录,.代表当前目录,..代表上级目录
        在这里插入图片描述
      • 第三列:所有者,也就是这个文件属于哪个用户。默认所有者是文件的建立用户
      • 第四列:所属组。默认所属组是文件建立用户的有效组,一般情况下就是建立用户的所在组
      • 第五列:大小。默认单位是字节。
      • 第六列:文件修改时间。文件状态修改时间或文件数据修改时间都会更改这个时间,注意这个时间不是文件的创建时间。
      • 第七列:文件名
        在这里插入图片描述

3.3.命令:cd:

  • 1.功能:切换工作目录
  • 2.语法:cd [参数] (功能描述:切换到指定目录)
  • 3.参数:
    • 1.参数含义是表示的目标目录,要切换去的地方,不提供的话就默认切换到当前登录用户HOME目录
    • 2.参数是特殊符号代表的含义:
      在这里插入图片描述
  • 4.演示:
    在这里插入图片描述
  • 5.其他说明:
  1. 相对路径和绝对路径:
  • 相对路径,/开头的称之为相对路径
  • 相对路径表示以当前目录作为起点,去描述路径,如test/a.txt,表示当前工作目录内的test文件夹内的a.txt文件
  • 绝对路径,/开头的称之为绝对路径
  • 绝对路径从开始描述路径

2.特殊路径符:

  • .表示当前目录,比如 cd ./Desktop 表示切换到当前目录下的Desktop目录内和cd Desktop效果一致
  • ..表示上一级目录,比如:cd … 即可切换到上一级目录,cd …/… 切换到上二级的目录
  • ~表示HOME目录,比如:cd ~ 即可切换到HOME目录或cd ~/Desktop,切换到HOME内的Desktop目录

3.4.命令:mkdir

  • 1.功能:指令用于创建目录
  • 2.语法:mkdir [选项] 要创建的目录
  • 3.选项:
    • -p:可选,表示自动创建不存在的父目录,适用于创建连续多层级的目录
  • 4.参数:
    • 被创建文件夹的路径,必填
  • 5.演示:
    在这里插入图片描述
  • 6.其他说明:
    • 创建文件夹需要修改权限,请确保操作均在HOME目录内,不要在HOME外操作,涉及到权限问题,HOME外无法成功

3.5.命令:rmdir

  • 命令功能: 删除空目录(仅仅能删除目录)
  • 语法:rmdir [选项] 要删除的空目录
  • 选项:
    • r :递归删除整个文件夹
    • f : 强制删除不提示
  • 参数:被删除文件夹的路径,必填路径
  • 演示:rmdir -rf dir
  • 其他说明
    • rmdir 删除的是空目录,如果目录下有内容时无法删除。
    • 如果需要删除非空目录,需要使用 rm -rf 要删除的目录(这个操作 请超级谨慎)
    • rm删除后就是彻底删除,为了防止误删除,能够进行数据的恢复,可以先行安装extundelete工具:
      在这里插入图片描述

4.文件类指令:

4.1.命令:touch:

  • 1.命令功能:创建文件或者修改文件时间
  • 2.语法:touch 参数
  • 3.参数:被创建的文件路径
  • 4.演示:
    在这里插入图片描述
  • 5.其他:
    • touch命令无选项,参数必填,表示要创建的文件路径,相对、绝对、特殊路径符均可以使用

4.2.命令:stat:

  • 1.功能:是查看文件或文本系统的详细信息的命令
  • 2.语法:stat 文件路径
  • 3.演示:
    在这里插入图片描述

4.3.命令:cat:

  • 1.功能:查看文件内容,可翻页查看
  • 2.语法:cat [选项] 要查看的文件
  • 3.选项:
    在这里插入图片描述
  • 4.参数:被查看的文件路径
  • 5.演示:
    • 查看某文件内容:
      在这里插入图片描述
    • -A隐藏特殊符号显示:
      在这里插入图片描述
    • 命令:cat -n/etc/profile | more, cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 |more
      在这里插入图片描述
      在这里插入图片描述
      在这里插入图片描述
  • 5.其他说明:
    • 当文件内容很多的时候,使用cat命令查看就不方便了,所以出现了more命令

4.4.命令:more

  • 1.功能:

    • 查看文件,可以支持翻页查看
    • more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more指令中内置了若干快捷键(交互的指令),如下:
      在这里插入图片描述
  • 2.语法: more 要查看的文件

  • 3.其他说明:

    • 与cat不同:
      • cat是直接将内容全部显示出来
      • more支持翻页,如果文件内容过多,可以一页页的展示
        • 空格键:向下翻页
        • b:向上翻页。
        • 回车键:向下滚动一行。
        • /字符串:搜索指定的字符串。
        • q:退出。

3.5.命令:less

  • 1.功能:
    • 分行显示文件内容
    • less指令用来分屏查看文件内容,它的内容与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。
    • less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有较高的效率。
  • 2.语法:less 要查看的文件
  • 3.演示:
    在这里插入图片描述
  • 4.其他:
    在这里插入图片描述

4.6.命令:echo指令

  • 1.功能:echo输出内容到控制台
  • 2.基本语法: echo [选项] [输出内容]
  • 3.实例:
    • 使用 echo 指令输出环境变量,比如输出 P A T H 、主机名 PATH 、主机名 PATH、主机名HOSTNAME
      在这里插入图片描述

4.7.命令:head

  • 功能:head用于显示文件的开头部分,默认情况下 head 指令显示文件的前10行内容。
  • 2.语法:
    • head 文件 (功能描述:查看文件头10行内容)
    • head -n 5 文件 (功能描述:查看文件头5行内容,5可以是任意行数)
  • 3.演示:
    • 查看 /etc/profile 的前5行代码: head -n 5 /etc/profile

4.8.命令:tail

  • 1.功能:tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的前10行内容
  • 2.语法:
    • tail 文件 (功能描述:查看文件尾10行内容)
    • tail -n 5 文件 (功能描述:查看文件尾5行内容,5可以是任意行数)
    • tail -f 文件 (功能描述:实时追踪该文档的所有更新)
  • 3.选项:
    在这里插入图片描述
  • 4.实例:
    • 时监控 mydate.txt,看看文件是否有变化**(Ctrl+C来停止监控)**:tail -f /home/mydate.txt
      在这里插入图片描述
      在这里插入图片描述
  • 5.其他说明:
    • ctrl + c:终止退出

4.9命令:>和>>

  • 1.功能:> 是输出重定向 和>> 是追加
  • 2.基本语法:
    • ls -l > 文件 (功能描述:列表的内容写入文件中(覆盖写))
    • ls -al>>文件 (功能描述:列表的内容追加到文件末尾)
    • cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
    • echo “内容”>>文件 (功能描述:将内容追加到文件)
  • 3.实例:
    • /home 目录下的文件列表,写入到 /home/info.txt 中,覆盖写入:ls -l/home > /home/info.txt :如果info.txt没有,则会自动创建

4.10.命令:ln

  • 1.功能:在文件之间建立链接
  • 2.语法:ln [选项] 源文件 目标文件
  • 3.选项:
    • -s:建立软链接文件。如果不加“-s”选项,则建立硬链接文件
    • -f:强制。如果目标文件已经存在,则删除目标文件后再建立链接文件
  • 4.参数:
    • 源文件和目标文件的路径
  • 5.演示:
    在这里插入图片描述
  • 6.其他:
    • 创建软链接时源文件必须为绝对路径
    • 硬链接特征(不建议)
      在这里插入图片描述
    • 软链接特征(推荐):类似windows下的快捷方式,使用绝对路径
      在这里插入图片描述

5.目录和文件都能操作类指令

5.1.命令:rm

  • 1.功能:删除文件、文件夹
  • 2.语法:rm [选项] 要删除的文件或目录
  • 3.选项:
    • 选项:-r,删除文件夹使用
    • 选项:-f,强制删除,不会给出确认提示,一般root用户会用到
  • 4.参数:
    • 参数:支持多个,每一个表示被删除的,空格进行分隔
  • 5.演示:
    • 将 /home/hello.txt 删除:rm /home/hello.txt
  • 6.其他:
    • rm命令很危险,一定要注意,特别是切换到root用户的时候。

5.2.命令:cp

  • 1.功能:复制文件、文件夹
  • 2.语法:cp [-r] 参数1 参数2
  • 3.选项:
    • 选项:-d:如果源文件为软链接(对硬链接无效),则复制出的目标文件也为软链接
    • 选项:-i: 询问,如果目标文件已经存在,则会询问是否覆盖
    • 选项:-p:复制后目标文件保留源文件的属性(包括所有者、所属组、权限和时间)
    • 选项:-r: 递归复制,用于复制目录
    • 选项:-a:相当于-dpr选项的集合
  • 4.参数:
    • 参数1,被复制的
    • 参数2,要复制去的地方
  • 5.演示:
    • cp a.txt b.txt,复制当前目录下a.txt为b.txt
    • cp a.txt test/,复制当前目录a.txt到test文件夹内
    • cp -r test test2,复制文件夹test到当前文件夹内为test2存在

强制覆盖不提示: \cp [选项] source dest


5.3.命令:mv :

  • 1.功能:
    • mv:移动文件与目录或重命名
  • 2.语法:
    • mv oldNameFile newNameFile (功能描述:重命名):两个文件在同一个目录,oldNameFile 代表旧的文件名,newNameFile 代表新的文件名
    • mv /temp/movefile /targetFolder (功能描述:移动文件):两个文件不在同一个目录,将/temp/movefile 文件移动到 /targetFolder 目录
  • 3.演示:
    • 案例 1: 将 /home/cat.txt 文件 重新命名为 pig.txt:
      在这里插入图片描述
    • 案例 2:将 /home/pig.txt 文件 移动到 /root 目录下:
      在这里插入图片描述

6.日期类指令:

6.1.命令:date

  • 1.功能:设置当前日期,date指令显示当前日期
  • 2.基本语法:
    • date (功能描述:显示当前时间)
    • date+%Y (功能描述:显示当前年份)
    • date+%m (功能描述:显示当前月份)
    • date+%d (功能描述:显示当前是哪一天)
    • date+“+%Y-%m-%d%H:%M:%S” (功能描述:显示年月日时分秒)
    • date -s 字符串时间,设置系统当前时间
  • 3.实操:
    • 显示当前时间信息
      在这里插入图片描述
    • 显示当前时间年月日:
      在这里插入图片描述
  • 3.设置系统当前时间,比如设置成 2020-11-23 10:09:09:date -s "2020-11-23 10:09:09"

6.2.命令:cal:

  • 1.功能:cal指令用于查看日历
  • 2.基本语法:cal[选项] (功能描述:不加选项,显示本月日历)
  • 3.实例:
    • 显示当前日历:cal
    cal
    
    • 显示2020年日历
    cal 2020
    

7.搜索命令:

7.1.命令:find

  • 1.功能:find 指令将从指定目录向下递归地遍历其各个子目录,将满足调节的文件或者目录显示在终端
  • 2.语法:按文件名搜索:find [搜索范围] [选项] 搜索的内容
  • 3.选项:
    在这里插入图片描述
  • 4.演示:

1.按照文件名搜索:

[root@localhost ~]# find 搜索路径 [选项] 搜索内容
选项:
  -name: 按照文件名搜索
  -iname: 按照文件名搜索,不区分文件名大小写
  -inum: 按照 inode 号搜索

2.按照文件大小搜索:

[root@localhost ~]# find 搜索路径 [选项] 搜索内容
选项:
	-size [+|-]大小: 按照指定大小搜索文件
	这里的“+”的意思是搜索比指定大小还要大的文件,“-”的意思是搜索比指定大小还要小的文件。

3.查看find 命令的文件大小单位:

[root@localhost ~]# man find
 -size n[cwbkMG]
 			File uses n units of space. The following suffixes can be used:
         'b' for 512-byte blocks (this is the default if no suffix is used)
        #这是默认单位,如果单位为 b 或不写单位,则按照 512 Byte 搜索
         'c' for bytes
        #搜索单位是 c,按照字节搜索
         'w' for two-byte words
        #搜索单位是 w,按照双字节(中文)搜索
         'k' for Kilobytes (units of 1024 bytes)
        #按照 KB 单位搜索,必须是小写的 k
         'M' for Megabytes (units of 1048576 bytes)
        #按照 MB 单位搜索,必须是大写的 M
         'G' for Gigabytes (units of 1073741824 bytes)
        #按照 GB 单位搜索,必须是大写的 G

4.按照文件修改时间搜索:

  • 1.Linux 中的文件有访问时间(atime)、数据修改时间(mtime)、状态修改时间(ctime)这三个 时间,我们也可以按照时间来搜索文件。
[root@localhost ~]# find 搜索路径 [选项] 搜索内容
  选项:
  -atime [+|-]时间: 按照文件访问时间搜索
  -mtime [+|-]时间: 按照文件数据修改时间搜索
  -ctime [+|-]时间: 按照文件状态修改时间搜索

这三个时间的区别我们在 stat 命令中已经解释过了,
这里用 mtime 数据修改时间来举例,重点说说“[+-]”时间的含义。
 -5:代表 5 天内修改的文件。
  5:代表前 5~6 天那一天修改的文件。
  +5:代表 6 天前修改的文件。

在这里插入图片描述

5.按照权限搜索

[root@localhost ~]# find 搜索路径 [选项] 搜索内容
选项:
-perm 权限模式: 查找文件权限刚好等于“权限模式”的文件
-perm -权限模式:查找文件权限全部包含“权限模式”的文件
-perm +权限模式:查找文件权限包含“权限模式”的任意一个权限的文件

6.按照所有者和所属组搜索

[root@localhost ~]# find 搜索路径 [选项] 搜索内容
  选项:
    -uid 用户 ID: 按照用户 ID 查找所有者是指定 ID 的文件
    -gid 组 ID: 按照用户组 ID 查找所属组是指定 ID 的文件
    -user 用户名: 按照用户名查找所有者是指定用户的文件
    -group 组名: 按照组名查找所属组是指定用户组的文件
    -nouser: 查找没有所有者的文件


按照所有者和所属组搜索时,“-nouser”选项比较常用,主要用于查找垃圾文件。
只有一种情况例外,那就是外来文件。比如光盘和 U 盘中的文件如果是由 Windows 复制的,在
Linux 中查看就是没有所有者的文件;再比如手工源码包安装的文件,也有可能没有所有者

7.按照文件类型搜索

[root@localhost ~]# find 搜索路径 [选项] 搜索内容
选项:
-type d: 查找目录
-type f: 查找普通文件
-type l: 查找软链接文件

8.逻辑运算符

[root@localhost ~]# find 搜索路径 [选项] 搜索内容
  选项:
    -a: and 逻辑与
    -o: or 逻辑或
    -not: not 逻辑非

1)-a:and 逻辑与
  find 命令也支持逻辑运算符选项,其中-a 代表逻辑与运算,也就是-a 的两个条件都成立,find 搜
  索的结果才成立。举个例子:
  [root@localhost ~]# find . -size +2k -a -type f
  #在当前目录下搜索大于 2KB,并且文件类型是普通文件的文件


2)-o:or 逻辑或
  -o 选项代表逻辑或运算,也就是-o 的两个条件只要其中一个成立,find 命令就可以找到结果。例
  如:
  [root@localhost ~]# find . -name cangls -o -name bols
  ./cangls
  ./bols
  #在当前目录下搜索文件名要么是 cangls 的文件,要么是 bols 的文件

3)-not:not 逻辑非
  -not 是逻辑非,也就是取反的意思。举个例子:
  [root@localhost ~]# find . -not -name cangls
  #在当前目录下搜索文件名不是 cangls 的文件

  • 5.其他说明:参数,搜索的关键字,支持通配符*, 比如:*test表示搜索任意以test结尾的文件

7.2.命令:locate

  • 1.功能:locate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速定位给定的文件。 locate 指令无需遍历整个文件系统,查询速度较快,为了保证查询结果的准确度,管理员必须定期更新 locate 时刻。
  • 2.语法:locate 搜索文件
  • 3.演示:
    配置文件
  [root@localhost ~]# vi /etc/updatedb.conf
    PRUNE_BIND_MOUNTS = "yes"
    #开启搜索限制,也就是让这个配置文件生效
    PRUNEFS = "……"
    #在 locate 执行搜索时,禁止搜索这些文件系统类型
    PRUNENAMES = "……"
    #在 locate 执行搜索时,禁止搜索带有这些扩展名的文件
    PRUNEPATHS = "……"
    #在 locate 执行搜索时,禁止搜索这些系统目录
  • 5.其他:
    • 1.数据库位置/var/lib/mlocate/mlocate.db,可以使用updatedb命令强制更新数据库。
    • 2.优点:按照数据库搜索,搜索速度快,消耗资源小。
    • 3.缺点:只能按照文件名来搜索文件,而不能执行更复杂的搜索,比如按照权限、大小、修改时间等搜索文件。
    • 4.特别说明:由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库
      在这里插入图片描述

7.3.命令:whereis

  • 1.功能:
    • 是搜索系统命令的命令(像绕口令一样),也就是说,whereis命令不能搜索普通文件,而只能搜索系统命令
    • 查找二进制命令、源文件和帮助文档的命令

7.4.命令:which

  • 1.功能:查看命令的程序本体文件路径
  • 2.语法:which 参数
  • 3.参数:被查看的命令
  • 4.演示:
    在这里插入图片描述

7.5.命令:grep 和 管道符号 |

  • 1.功能:
    • grep 过滤查找;管道符 “|” :表示将前一个命令的处理结果输出传递给后面的命令处理,两者通常结合使用
  • 2.基本语法:grep[选项] 查找内容 源文件
  • 3.选项-n,可选,表示在结果中显示匹配的行的行号。
  • 4.选项说明:
    在这里插入图片描述
  • 5.演示:
    • 在 hello.txt 文件中,查找 “yes” 所在行,并且显示行号
    cat /home/hello.txt | grep "yes"	
    grep -n "yes" /home/hello.txt
    
  • 6.其他说明:
    • | 可以支持嵌套:cat a.txt | grep itheima | grep itcast

7.6.命令:wc

  • 1.功能:统计
  • 2.语法:wc [-c -m -l -w] 文件路径
  • 2.选项:
    • -c,统计bytes数量
    • -m,统 计字符数量
    • -l,统计行数
    • -w,统计单词数量
    • 文件路径,被统计的文件,可作为内容输入端口

参数文件路径,可作为管道符的输入


7.7.命令:`反引号

  • 1.功能:被两个反引号包围的内容,会作为命令执行
  • 2.语法:
    • echo `pwd`,会输出当前工作目录

8.压缩和解压缩命令:

在Linux中可以识别到的压缩格式有十几种,如.zip、.gz、.bz2、.tar、.tar.gz、.tar.bz等

8.1.命令:gzip / gunzip

  • 1.功能描述:gzip 用于压缩文件,gunzip 用于解压
  • 2.语法:
    • gzip 文件 (功能描述:压缩文件,只能将文件压缩为 *.gz文件)
    • gunzip 文件.gz (功能描述:解压缩文件命令)
  • 3.演示:
    • 将 /home 下的 hello.txt 文件进行压缩:gzip /home/hello.txt
    • 将 /home 下的 hello.txt.gz 文件进行解压缩:gunzip /home/hello.txt.gz

8.2.命令:.zip

  • 1功能:
    • 压缩文件或目录
  • 2.语法:
    • [root@localhost ~]# zip [选项] 压缩包名 源文件或源目录
      在这里插入图片描述
  • 3.选项:
    • .-r: 压缩目录
  • 4.实操:
zip ana.zip anaconda-ks.cfg 

zip -r myhome.zip /home/   [将home目录及其包含的文件和子文件夹都压缩]


8.3.命令:unzip

  • 1.功能:
    • unzip用于解压,这个在项目打包发布中很有用
  • 2.语法:
    • [root@localhost ~]# unzip [选项] 压缩包名
  • 3.选项:
    • -d:d<目录> 指定解压后文件的存放目录
  • 4.演示:
unzip -d /tmp/ ana.zip  #把压缩包解压到指定位置

mkdir /opt/tmp
unzip -d/opt/tmp /home/myhome.zip


8.3.命令:bzip2和gunzip

“.bz2”格式是 Linux 的另一种压缩格式,从理论上来讲,“.bz2”格式的算法更先进、压缩比更好;而“.gz”格式相对来讲压缩的时间更快

bz2 不能压缩目录

  • 1.功能:描述:.bz2 格式的压缩命令

  • 2.命令的格式: bzip2 [选项] 源文件

  • 3.选项:

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

    • 压缩文件:
     bzip2 anaconda-ks.cfg   #压缩成.bz2 格式
     bzip2 -k install.log.syslog  #保留源文件压缩
    
    • 两个命令都可以解压缩“.gz”格式
      [root@localhost ~]# gunzip install.log.gz
      [root@localhost ~]# gzip -d anaconda-ks.cfg.gz
    

8.5.命令:.tar

  • 1…功能:打包命令,最后打包后的文件是 .tar.gz 的文件
  • 2.语法:tar [选项] XXX.tar.gz 打包的内容 (功能描述:打包目录,压缩后的文件格式 .tar.gz)
  • 3.选项:
    在这里插入图片描述
  • 4.演示:
    • 压缩多个文件,将 /home/pig.txt 和 /home/cat.txt 压缩成 pc.tar.gz :tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt
    • 将 /home 的文件夹压缩成 myhome.tar.gz:tar -zcvf myhome.tar.gz /home/
    • 将 pc.tar.gz 解压到当前目录:tar -zxvf pc.tar.gz

8.6.命令:.tar

  • 1.功能:解包功能
  • 2.语法: tar [选项] 压缩包
  • 3.选项:
    -x: 解打包
    -f: 指定压缩包的文件名
    -v: 显示解打包文件过程
    -t: 测试,就是不解打包,只是查看包中有哪些文件
    -C(大) 目录:指定解打包位置
  • 4.演示:
    • 解打包到当前目录下: tar -xvf anaconda-ks.cfg.tar
  • 5.其他说明:.tar.gz 和 .tar.bz2对比
使用 tar 命令直接打包压缩。

命令格式如下:
    [root@localhost ~]# tar [选项] 压缩包 源文件或目录
    选项:
    -z: 压缩和解压缩“.tar.gz”格式
    -j: 压缩和解压缩“.tar.bz2”格式
    例如:.tar.gz 格式
    [root@localhost ~]# tar -zcvf tmp.tar.gz /tmp/
    #把/tmp/目录直接打包压缩为“.tar.gz”格式
    [root@localhost ~]# tar -zxvf tmp.tar.gz
		#解压缩与解打包“.tar.gz”格式


例如:.tar.bz2 格式
  [root@localhost ~]# tar -jcvf tmp.tar.bz2 /tmp/
  #打包压缩为“.tar.bz2”格式,注意压缩包文件名
  [root@localhost ~]# tar -jxvf tmp.tar.bz2
	#解压缩与解打包“.tar.bz2”格式


再举几个例子:
  [root@localhost ~]# mkdir test
  [root@localhost ~]# touch test/abc
  [root@localhost ~]# touch test/bcd
  [root@localhost ~]# touch test/cde
  #建立测试目录和测试文件
  [root@localhost ~]# tar -zcvf test.tar.gz test/
  #压缩
  [root@localhost ~]# tar -ztvf test.tar.gz
  #只查看,不解压
  [root@localhost ~]# tar -zxvf test.tar.gz -C /tmp
  #解压缩到指定位置
  [root@localhost ~]# tar -zxvf test.tar.gz -C /tmp test/cde
  #只解压压缩包中的特定文件,到指定位置

9.组管理

9.1 Linux 组基本介绍

  • 1.在 linux 中的每个用户必须属于一个组,不能独立于组外。在 linux 中每个文件/目录都有所有者、所在组、其它组的概念
    在这里插入图片描述
    • 所有者
    • 所在组
    • 其它组
    • 改变用户所在的组

9.2.文件/目录的 所有者:

一般文件/目录的创建者就是谁创建了该文件,就自然成为了该文件的所有者

a.查看文件/目录的所有者:

  • 1.查看文件/目录的所有者指令:ls –ahl
  • 2.实例:
    在这里插入图片描述

b.修改文件/目录的所有者:

  • 1.指令:chown 用户名 文件名,修改文件/目录所有者,
  • 2.案例:把root 创建的文件 apple.txt ,将其所有者修改成 tom为所有者:chown tom apple.txt

1.创建文件/目录并查看文件所有者:

在这里插入图片描述

2.修改文件所有者:

在这里插入图片描述


9.3.文件/目录 所在组:

a.组创建:

  • 1.语法:groupadd 组名
  • 2.实例:创建一个组,:monster,再创建一个用户 fox,再放到monster 组中:useradd -g monster fox
    在这里插入图片描述

9.4.文件/目录所在组操作:

当某个用户创建了一个文件/目录后,这个文件的所在组就是该用户所在的组(默认)

a.查看文件/目录 所在组:

  • 1.基本指令:ls –ahl,查看文件/目录所在组
  • 2.实例, 使用 fox 来创建一个文件,看看该文件属于哪个组?
    在这里插入图片描述

b.修改文件/目录所在组:

  • 1.基本指令:chgrp 组名 文件名
  • 2.实例:创建用户组fruit,使用 root 用户创建文件orange.txt,看看当前这个文件属于哪个组,然后将这个文件所在组,修改到fruit组
    在这里插入图片描述
    在这里插入图片描述

9.5.其他组:

除文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组


9.6.改变用户所在组

在添加用户时,可以指定将该用户添加到哪个组中,同样的用 root 的管理权限可以改变某个用户所在的组

a.改变用户所在组

  • 1.usermod –g 新组名 用户名
  • 2.usermod –d 目录名 用户名 改变该用户登陆的初始目录
  • 3.特别说明:用户需要有进入到新目录的权限。

b.应用实例

  • 1.将 zwj 这个用户从原来所在组,修改到 wudang 组;usermod -g wudang zwj
    在这里插入图片描述

10.权限管理

11.定时任务

12.磁盘分区挂载

13.网络配置:

10.常用的网路命令:

10.1.配置IP地址:

  • 1.配置 IP 地址有两种方法:
    • setup 工具
    • vi /etc/sysconfig/network-scripts/ifcfg-eth0 手工修改配置文件
  • 2.配置完成后使用 service network restart 重启网络服务,对于复制镜像有可能需要重置 UUID(唯一识别符)
    [root@localhost ~]# vi /etc/sysconfig/network-scripts/ifcfg-eth0
    #删除 MAC 地址行 也就是HWADDR行
    [root@localhost ~]# rm -rf /etc/udev/rules.d/70-persistent-net.rules
    #删除 MaC 地址和 UUID 绑定文件
    [root@localhost ~]# reboot
    #重启 Linux

10.2.命令:ifconfig

a.功能:

  • 1.功能描述:配置网络接口,最主要的作用就是查看 IP 地址的信息,直接输入 ifconfig 命令即可

f.演示:

在这里插入图片描述

10.3.命令:ping

a.功能:

  • 1.功能描述:向网络主机发送ICMP请求

c.选项:

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

f.演示:

  • 1.例如可以使用“-b”选项,后面加入广播地址,探测整个网段有多少主机是可以和我们通信
    [root@localhost ~]# ping -b -c 3 192.168.103.255 #探测192.168.103.0/24网段有多少主机是可以和我们通信

10.4.netstat:

a.功能:

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

b.语法:

netstat [选项]

c.选项:

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

e.其他:

  • 1.在CentOS 7.x中netstat命令默认没有安装,如果需要使用,需要安装net-snmp和net-tools软件包。
  • 2.使用选项“-an”可以查看所有连接,包括监听状态的连接(LISTEN)、已经建立连接状态的连接(ESTABLISHED)、Socket程序连接等。因为连接较多,所以输出的内容有很多从“Active UNIX domain sockets”开始,之后的内容就是Socket程序产生的连接,之前的内容都是网络服务产生的连接。我们可以在“-an”选项的输出中看到各种网络连接状态,而之前的“-tuln”选项则只能看到监听状态。

f.演示:

  • 1.查看本机开启的端口:
    在这里插入图片描述
  • 2.查看本机有哪些程序开启的端口,使用“-p”选项,则可以查看到是哪个程序占用了端口,并且可以知道这个程序的PID
    在这里插入图片描述

10.5.write

a.功能描述:向其他用户发送信息


14.系统痕迹命令:

系统中有一些重要的痕迹日志文件,如/var/log/wtmp、/var/run/utmp、/var/log/btmp、/var/log/lastlog等日志文件,如果你用vim打开这些文件,你会发现这些文件是二进制乱码。由于这些日志中保存的是系统的重要登录痕迹,包括某个用户何时登录了系统,何时退出了系统,错误登录等重要的系统信息。这些信息要是可以通过vim打开,就能编辑,这样痕迹信息就不准确,所以这些重要的痕迹日志,只能通过对应的命令来进行查看

11.1.命令:w

a.功能:

  • 1.功能描述:显示当前登录用户,和他正在做什么

f.演示:

在这里插入图片描述

  • 1.第一行的信息含义:
    在这里插入图片描述
  • 2.第二行信息:
    在这里插入图片描述

11.2 .命令:who:

a.功能:

  • 1.who命令和w命令类似,用于查看正在登陆的用户,但是显示的内容更加简单,也是查看/var/run/utmp日志

f.演示:

在这里插入图片描述

11.3.命令:last

a.功能:

  • 1.查看系统所有登陆过的用户信息的,包括正在登陆的用户和之前登陆的用户。这个命令查看的是/var/log/wtmp痕迹日志文件

f.演示:

在这里插入图片描述

11.4.lastlog

a.功能:

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

f.演示:

在这里插入图片描述

11.5.lastb

a.功能:

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

f.演示:

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值