天天看點

每天三個Linux基礎指令-011

我們今生活着的唯一意義,就是超越今生

由于最近有事耽擱了幾天,今天開始繼續創作打卡

内容不一定精彩,知識不一定你可以用得上,觀點不一定準确,還望觀者覺得有缺陷歡迎指正,覺得還好的感謝鼓勵點贊。

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其他指令來運作

每天三個Linux基礎指令-011
[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 ~]#      

繼續閱讀