我們今生活着的唯一意義,就是超越今生
由于最近有事耽擱了幾天,今天開始繼續創作打卡
内容不一定精彩,知識不一定你可以用得上,觀點不一定準确,還望觀者覺得有缺陷歡迎指正,覺得還好的感謝鼓勵點贊。
6.1 find
主要參數:
必會,參數較多
格式:find 路徑 參數
-name 按照檔案名稱
-perm 按照權限來查找
-user 按照檔案屬主查找
-group 屬組
-mtime 按照檔案更改時間
-n 檔案更改時間距離現在n天之内
+n 檔案更改時間距離現在n天之前
-type 按照檔案類型查找:d,b,f,l,c
-size 符合檔案大小的檔案
-exec {} \; 比對好的參數傳遞其他Linux指令
65 find /root/ -mtime -1 #一天之内修改
66 find /root/ -mtime +1 #一天之前修改
67 find /root/ -type d
-a 與
-o 或
[root@localhost ~]# find /etc/ -size +20k -o -size -3k |wc -l #查找檔案大小 大于20k 或 小于3k的檔案
2517
[root@localhost ~]# find /etc/ -size -20k -a -size +3k |wc -l #查找檔案大小 小于20k 且 大于3k的檔案
765
[root@localhost ~]#
-exec {} \; 比對好的内容 注入到 {}内,通過Linux其他指令來運作
[root@localhost ~]# touch {1..3}.back
[root@localhost ~]# find ./ -name "*.back" -exec ls {} \; #将find比對的内容ls
./1.back
./2.back
./3.back
[root@localhost ~]# find ./ -name "*.back" -exec mv {} /opt/ \; #将find比對的内容mv到/opt/
[root@localhost ~]# ls /opt/
1.back 2.back 3.back rh
| xargs -i {}
[root@localhost ~]# find ./ -name "*1.txt" |xargs -i cp {} /opt/
[root@localhost ~]# ls /opt/
1.back 1.txt 2.back 3.back parser-sha1.txt rh
-perm
查找系統中權限不低于777的危險檔案
[root@localhost ~]# find /etc/ -type f -perm 777|wc -l
0
[root@localhost ~]#
-maxdeph
查找/bin目錄下的第一層目錄的權限=755的檔案
find /etc/ -maxdepth 1 -perm 766
-user
查找系統中所有關于使用者zzp的檔案,并放入/root/test
[root@localhost ~]# find / -user zzp -exec cp -a {} /root/test/ \;
[root@localhost ~]# ls -l /root/test/ |wc -l
110
6.2 grep
常用過濾指令,配合管道用
主要參數:
-v 取反
-i 忽略大小寫
^# 以井号鍵開頭
^$ 空行
-n 對過濾的内容加上行号
示範:
[root@localhost ~]# grep "nologin|root" /etc/passwd|wc -l
0
[root@localhost ~]# grep "nologin\|root" /etc/passwd|wc -l #\轉義字元生效
37
[root@localhost ~]# egrep "nologin|root" /etc/passwd |wc -l
37
[root@localhost ~]#
6.3 tee
主要參數:
讀取标準輸入的資料并将内容輸出成檔案
-a 追加
[root@localhost ~]# df -h |head -2|tee disk.log
檔案系統 容量 已用 可用 已用% 挂載點
/dev/mapper/centos-root 17G 4.6G 13G 27% /
[root@localhost ~]# cat disk.log
檔案系統 容量 已用 可用 已用% 挂載點
/dev/mapper/centos-root 17G 4.6G 13G 27% /
[root@localhost ~]# hostname|tee disk.log #不加參數覆寫
localhost.localdomain
[root@localhost ~]# cat disk.log
localhost.localdomain
[root@localhost ~]# hostname|tee -a disk.log #追加
localhost.localdomain
[root@localhost ~]# cat disk.log
localhost.localdomain
localhost.localdomain
[root@localhost ~]#