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的基础命令(3)

上一篇:Linux命令:whereis


下一篇:linux服务-lamp