Linux的基础命令(3)

一、基础命令

1、tar命令

作用:用于压缩和解压缩文件 语法: tar 【选项】 打包文件名 源文件 选项: -c:打包  -f:指定文件名 -t:列出tar包中的文件内容 -v:显示过程 -z:压缩gz格式的文件 -j:压缩bz2格式的文件名 -J:压缩xz格式的文件名  -x:解压  --delete:产出压缩包中的内容 -C:指定文件路径
#仅仅打包,不压缩
[root@RHEL8-Master aaa]# tar -cf abcd.tar a b c d 
[root@RHEL8-Master aaa]# ll abcd.tar 
-rw-r--r-- 1 root root 10240 Jan  3 22:29 abcd.tar

#查看tar包里面的内容
[root@RHEL8-Master aaa]# tar -tf abcd.tar 
a
b
c
d

#单独删除某一个选项
[root@RHEL8-Master aaa]# tar --delete a -f abcd.tar 
[root@RHEL8-Master aaa]# tar -tf abcd.tar 
b
c
d

#打包压缩,并且指定到/tmp下,是gz格式的
[root@RHEL8-Master aaa]# tar -czf /tmp/abcd.tar.gz a b c d 
[root@RHEL8-Master aaa]# ls -l /tmp/abcd.tar.gz 
-rw-r--r-- 1 root root 170 Jan  3 22:33 /tmp/abcd.tar.gz

#解压并且指定到某个目录下
[root@RHEL8-Master aaa]# tar -xf /tmp/abcd.tar.gz -C /root/
[root@RHEL8-Master aaa]# ls /root/
a  aaa  anaconda-ks.cfg  b  c  d

2、time命令

作用:用于测试程序执行所花费的时间 格式:time 命令 示例
[root@RHEL8-Master aaa]# time date
Sun Jan  3 22:37:59 CST 2021

real    0m0.001s   #实际使用的时间     
user    0m0.001s   #用户使用的时间
sys    0m0.000s           #系统使用的时间

 

3、groupadd命令

作用:创建用户组 语法:   groupadd 【选项】 组名 选项: -g:指定GID

#添加组

[root@RHEL8-Master ~]# groupadd test

 

4、groupmod命令

作用:修改组的属性 语法: group 新组名 旧组名 选项: -g:修改组ID -n:修改组名
#修改组ID
[root@RHEL8-Master ~]# groupmod -g 1252 test


#修改组名
[root@RHEL8-Master ~]# groupmod -n test01 test
[root@RHEL8-Master ~]# tail -1 /etc/group
test01:x:1252:

5、groupdel命令

作用:删除组 语法: groupdel + 组名 #组一定要存在 #不能删除用户的所属组
#删除组
[root@RHEL8-Master ~]# groupdel test01

#如果删除用户的组会直接报错
[root@RHEL8-Master ~]# groupdel zhangsan
groupdel: cannot remove the primary group of user 'zhangsan'

 

6、find命令

作用:用于查找文件或目录,根据设定的条件递归查找对应的文件 语法: find 目录路径 条件1 选项 条件2 ... 条件: -type:指定类型(f:文件,d:目录,l:链接文件) -name:指定文件名 -iname:不区分大小写指定文件名 -size:按照文件大小查找 +1k:大于1k -1k:小于1K -user:按照用户名查找 -mtime:按照天数查找 +10:十天前 -10:十天内 10:刚好十天 固定格式: find .. .. -exec 处理命令 {} \; 以{} 代替每一个结果,逐个处理,遇到\;就结束
#查找大于10k的文件
[root@RHEL8-Master ~]# find / -size +10k -type f

#按照所有者查找
[root@RHEL8-Master ~]# find / -user zhangsan

#按照文件名查找
[root@RHEL8-Master ~]# find / -name fstab
/etc/fstab
[root@RHEL8-Master ~]# find / -iname FsTab
/etc/fstab

#查找两天以内的文件
[root@RHEL8-Master ~]# find / -mtime -2 -type f

#查找特定文件,并且把它复制到/tmp下
[root@RHEL8-Master ~]# find / -user zhangsan -exec cp {} /tmp \;

试验:

对比试验:tar命令执行以下几种操作的具体时间 1、只打包 2、使用tar.gz格式 3、使用tar.bz2格式 4、使用tar.xz格式
#创建环境:
[root@RHEL8-Master ~]# mount /dev/cdrom /mnt/cdrom/
#查看光盘大小
[root@RHEL8-Master cdrom]# du -sh BaseOS/
907M    BaseOS/

#测试只打包速度
[root@RHEL8-Master cdrom]# time tar -cf /tmp/baseos.tar BaseOS/
real    0m20.269s
user    0m0.017s
sys    0m7.988s

#测试gz环境的速度
[root@RHEL8-Master cdrom]# time tar -czf /tmp/baseos.tar.gz BaseOS/
real    0m32.552s
user    0m28.566s
sys    0m2.646s

#测试bz2格式的速度
[root@RHEL8-Master cdrom]# time tar -cjf /tmp/baseos.tar.bz2 BaseOS/

real    1m56.848s
user    1m52.884s
sys    0m2.183s

#测试xz格式的速度
[root@RHEL8-Master cdrom]# time tar -cJf /tmp/baseos.tar.xz BaseOS/

real    5m53.296s
user    5m45.587s
sys    0m4.213s

#对比一下大小
[root@RHEL8-Master ~]# ll /tmp/baseos.tar* -h
-rw-r--r-- 1 root root 908M Jan  3 22:45 /tmp/baseos.tar
-rw-r--r-- 1 root root 840M Jan  3 22:53 /tmp/baseos.tar.bz2
-rw-r--r-- 1 root root 842M Jan  3 22:47 /tmp/baseos.tar.gz
-rw-r--r-- 1 root root 822M Jan  3 23:00 /tmp/baseos.tar.xz
上一篇:Linux rhel8下简单的设备分区管理


下一篇:2021全新Linux160讲系统教程