符号链接(symbolic link)文件,也称软链接(soft link)
以l开头是软链接,软链接是一种快捷方式:
创建软链接:ln -s oldboy.txt oldboy_soft_link
cat oldboy_soft_link
删除:rm
4.字符(character)/块(block)设备文件
以C开头的就是字符设备(猫等串口设备)
以b开头的就是块设备(硬盘、光驱是块设备的代表)
5.套接口(socket)文件
以s开头:sock文件也是一类特殊的文件,这类文件通常用在网络之间进行数据连接,如我们可以启动程序来监听客户端的请求,客户端可以通过套接字来进行数据通信。
which 命令
重点:
PATH变量
$PATH 命令行执行命令会从PATH对应的路径中查找命令
PATH 对应的路径中没有这个命令就会报command not found
whereis:显示命令、源码、说明文档等的路径
只查找二进制命令
locate:快速定位文件路径
查找文件路径,是从数据库A(/var/lib/mlocate/mlocate.db)里查询
更新A数据库用updatedb
c7默认没安装,可不学
备注:找指定Yum安装命令(查看命令对应的软件包)
6.find: 查找目录下的文件*****
查找原理:磁盘遍历(从硬盘里一个个查找),速度慢。
[root@localhost.localdomain
~]# find ~ -name "keyan"
路径 名字参数 具体文件
/root/keyan
模糊查找 用*表示所有
[root@localhost.localdomain
~]# find / -name "ifcfg*"
按文件类型查找-type
[root@localhost.localdomain
~]# find / -type f -name "ifcfg*"
查找目录 -d
[root@localhost.localdomain
~]# find / -type d -name "ifcfg*"
-type c
File is of type c:
b block (buffered) special
c character (unbuffered) special
d directory
p named pipe (FIFO)
f regular file
l symbolic link; this is never true if the -L option or the -follow option is in effect,
unless the symbolic link is broken. If you want to search for symbolic links when -L is
in effect, use -xtype.
如果取并集即或者用-o分割查找的项(-o 表示或的关系,表示前后两个条件满足其中一个即可)
-a and 并且
-o or 或者
! 取反
取反:
[root@oldboyedu /data]# touch oldboy{1..10}.txt
[root@oldboyedu /data]# ls
oldboy10.txt oldboy2.txt oldboy4.txt oldboy6.txt oldboy8.txt
oldboy1.txt oldboy3.txt oldboy5.txt oldboy7.txt oldboy9.txt
[root@oldboyedu /data]# find /data -type f
/data/oldboy1.txt
/data/oldboy2.txt
/data/oldboy3.txt
/data/oldboy4.txt
/data/oldboy5.txt
/data/oldboy6.txt
/data/oldboy7.txt
/data/oldboy8.txt
/data/oldboy9.txt
/data/oldboy10.txt
[root@oldboyedu /data]# find /data ! -type f
/data
[root@oldboyedu /data]# mkdir {a..d}
[root@oldboyedu /data]# find /data ! -type f
/data
/data/a
/data/b
/data/c
/data/d
-exec 对查找的结果再处理
[root@oldboyedu /data]# find /data -type f -exec ls -l {} \;
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy1.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy2.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy3.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy4.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy5.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy6.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy7.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy8.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy9.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy10.txt
xargs 分组
[root@oldboyedu /data]# echo {1..10} >test.txt
[root@oldboyedu /data]# cat test.txt
1 2 3 4 5 6 7 8 9 10
[root@oldboyedu /data]# xargs -n 3 <test.txt
1 2 3
4 5 6
7 8 9
10
[root@oldboyedu /data]# xargs -n 4 <test.txt
1 2 3 4
5 6 7 8
9 10
[root@oldboyedu /data]# xargs -n 5 <test.txt
1 2 3 4 5
6 7 8 9 10
-d 指定分隔符,不指定默认空格
备注:少用管道,效率低,
[root@oldboyedu /data]# cat test.txt
a.b.c.d
[root@oldboyedu /data]# echo "Oldboy" >test.txt
[root@oldboyedu /data]# echo "Oldgirl" >>test.txt
[root@oldboyedu /data]# echo "Oldboedu" >>test.txt
[root@oldboyedu /data]# echo "Oldboyedu" >>test.txt
[root@oldboyedu /data]# cat test.txt
Oldboy
Oldgirl
Oldboedu
Oldboyedu
[root@oldboyedu /data]# cat test.txt|grep "boy"
Oldboy
Oldboyedu
[root@oldboyedu /data]# grep "boy" test.txt
Oldboy
Oldboyedu
[root@oldboyedu /data]# ifconfig|grep 10
inet
10.0.0.201 netmask
255.255.255.0 broadcast
10.0.0.255
ether 00:0c:29:2a:ca:54 txqueuelen 1000 (Ethernet)
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
[root@oldboyedu /data]#
[root@oldboyedu /data]# ifconfig|grep 10|grep 201
inet
10.0.0.201 netmask
255.255.255.0 broadcast
10.0.0.255
管道使用
[root@oldboyedu /data]# find /data -type f -name "oldboy*" -mtime -7 -exec ls -l {} \;
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy1.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy2.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy3.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy4.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy5.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy6.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy7.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy8.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy9.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy10.txt
[root@oldboyedu /data]# find /data -type f -name "oldboy*" -mtime -7|xargs ls -l
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy10.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy1.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy2.txt
-rw-r--r--. 1 root root 0 Mar 14 10:39 /data/oldboy3.txt
删除:
接啥执行啥
[root@oldboyedu /data]# find /data -type f|xargs rm -f
[root@oldboyedu /data]# ll
total 0
drwxr-xr-x. 2 root root 6 Mar 14 10:40 a
drwxr-xr-x. 2 root root 6 Mar 14 10:40 b
drwxr-xr-x. 2 root root 6 Mar 14 10:40 c
drwxr-xr-x. 2 root root 6 Mar 14 10:40 d
[root@oldboyedu /data]# touch oldboy{1..5}.txt
[root@oldboyedu /data]# ls
a b c d oldboy1.txt oldboy2.txt oldboy3.txt oldboy4.txt oldboy5.txt
[root@oldboyedu /data]# find /data -type f -exec rm -f {} \;
[root@oldboyedu /data]# ls
a b c d
删除:
find /data -type f -exec rm -f {} \;
相当于
rm -f oldboy1.txt
rm -f oldboy2.txt
rm -f oldboy3.txt
效率低。
find /data -type f|xargs rm -f
只是一条命令
rm -f oldboy1.txt oldboy2.txt oldboy3.txt
[root@oldboyedu /data]# find /data -type f|xargs -i cp {} /opt
[root@oldboyedu /data]# ls /opt/
oldboy1.txt oldboy2.txt oldboy3.txt oldboy4.txt oldboy5.txt
- 过去
+未来
[root@oldboyedu /data]# date +"%Y-%m-%d %H:%M:%S"
2020-10-01 00:09:36
[root@oldboyedu /data]# date +"%F %T"
2020-10-01 00:09:39
打包 压缩
打包 框 放文件 压缩体积降低
文件压缩,大小会降低
tar *****
打包:
语法:
tar 参数 框 (压缩包)苹果(被打包的文件)
打包集合参数zcvf:
压缩包名字:data.tar.gz tar 表示打包,gz表示gzip格式压缩
打包过程实例:
cd ~
[root@localhost.localdomain
~]# mkdir /data
mkdir: cannot create directory ‘/data’: File exists
[root@localhost.localdomain
~]# cd /data
[root@localhost.localdomain
/data]# touch {1..5}.txt
[root@localhost.localdomain
/data]# ls
1.txt 2.txt 3.txt 4.txt 5.txt
[root@localhost.localdomain
/data]# cd ..
[root@localhost.localdomain
/]# tar zcvf /opt/data.tar.gz ./data
./data/
./data/1.txt
./data/2.txt
./data/3.txt
./data/4.txt
./data/5.txt
[root@localhost.localdomain
/]# tar -tf /opt/data.tar.gz
./data/
./data/1.txt
./data/2.txt
./data/3.txt
./data/4.txt
./data/5.txt
[root@localhost.localdomain
/]#
解压过程:
指定位置:
网友评论