1.3處理動作
2示例在linux中一切皆檔案,我們先需要在大量的檔案中找到我們需要的檔案就需要查詢命令,find命令是查詢檔案的乙個很好的命令
find
語法格式:find [option] 查詢路徑 查詢條件 處理動作
預設從當前所在目錄向下查詢,即相對路徑,也可以使用絕對路徑
想要查詢的檔案所具有的特點、屬性
選項描述
name
後面跟檔名,支援萬用字元模糊查詢
iname
後面跟檔名,支援萬用字元,忽略大小寫
inum
後面跟檔案的inode號,基於inode查詢
samefile
後面跟檔名,查詢與其inode相同的檔案,即硬鏈結
links #
後面跟數字,查詢硬連線數為# 的檔案
選項描述
user
後面跟使用者名稱,查詢屬主owner相同的檔案
group
後面跟使用者名稱,查詢屬組相同的檔案
uid #
查詢使用者uid是#的檔案
gid #
查詢使用者gid是#的檔案
nouser
查詢沒有屬主owner的檔案
nogroup
查詢沒有屬組group的檔案
-type
f:普通檔案
d:目錄檔案
l:鏈結檔案
s:套接字檔案
c:字元裝置檔案
b:塊裝置檔案
p:管道檔案
-size [+|-]#
#為檔案大小
單位
c:位元組
b:塊(512位元組)
w:字(2位元組)
k:千位元組
m:兆位元組
g:吉位元組
引數描述#
(#-1,#] :大於#且大小不超過1個同樣單位大小的檔案
-#[0,#-1):小於#-1的檔案
+#(#.00):大於#的檔案
1.以天為單位
-atime [+|-]#:表示訪問時間
-mtime [+|-]#:表示資料修改時間
-ctime [+|-]#:表示與元資料修改時間
引數描述#
[#,#+1)第幾天
-#[0,#)多少天之內
+#[#+1.∞)多少天之前
2.以分鐘為單位
-amin [+|-]#:表示訪問時間
-mmin [+|-]#:表示資料修改時間
-cmin [+|-]#:表示與元資料修改時間
引數描述#
[#,#+1)第幾分鐘
-#[0,#)多少分鐘之內
+#[#+1.∞)多少分鐘之前
-perm
語法:
find -perm mode / 精準匹配
find -perm -mode / 滿足乙個就可以,或關係
mode----->>755 644 rwx
-maxdepth level 最大搜尋深度
find -maxdepth 2 / 從當前目錄開始向下最多搜尋2層,包括第二層
-mindepth level 最小搜尋深度
find -mindepth 2 / 從當前目錄向下的第二層目錄開始搜尋,不包括第二層
與:-a // 不加也預設為加了-a
或:-o //字面意思,乙個或者另乙個
非:-not 或者 ! //在所選範圍外
-print 預設動作,把查詢到的內容輸出到螢幕上
-exec command {} \;:
將前面查詢到的檔案當做後面command(命令)的引數,{}表示前面find查詢到的檔案,後面的\;是結束符不能少
-ok command {} \;:與-exec用法一樣,在執行後面command命令時會給出提示,要不要執行
-xargs:傳遞引數,「|xargs」將find查詢到的檔案乙個乙個的傳遞給後面的命令當做引數
-delete:直接刪除查詢到的檔案,不詢問
> file:將查詢到的檔案重定向到新的檔案中
1.查詢家目錄下其他人有寫許可權的檔案,取消其寫許可權
find /root -perm -002 -exec chmod o-2 {} \;
2.查詢/data下許可權是644且以.sh結尾的普通文間件,修改許可權為755
find /data -perm 644 -name "*.sh" -exec chmod 755 {} \;
3.查詢當前系統上沒有屬主或屬組,且最近乙個週內曾被訪問過的檔案
find / -nouser -o -nogroup -atime -7
4.查詢/etc目錄下所有使用者都沒有寫許可權的檔案
find /etc ! -perm 222 -ls
find /etc ! -perm 222 -exec ls {} \;
5.查詢/etc目錄下至少有一類使用者沒有執行許可權的檔案
find /etc ! -perm -111 -ls // -111代表三個1最少選乙個
必看 Linux bash基礎特性一遍就會!
bash是乙個命令處理器,通常執行於文字視窗中,並能執行使用者直接輸入的命令。bash還能從檔案中讀取命令,這樣的檔案稱為指令碼。和其他unix shell 一樣,它支援檔名替換 萬用字元匹配 管道 here文件 命令替換 變數,以及條件判斷和迴圈遍歷的結構控制語句。包括關鍵字 語法在內的基本特性全...
一遍成功的ROS主從機詳細配置
ros支援多機互通,可以設定一台主機,多台從機,主機中執行roscore,啟動master節點,從機直接執行其他節點,在配置好的機器之間就可以互相通訊了,就像在同一臺機器上一樣。具體應該如何配置呢?下面看下詳細步驟 1 ip設定 乙個主機,多個從機,每個先都設定為同一網段下固定ip。2 修改 bas...
find命令解析(不一樣的查詢)
find命令解析 不一樣的查詢 linux中,全部內容都是以檔案的形式存在的,這就意味著所有檔案的數量也是驚人的,我們如何在天文數字般的檔案中找到我們需要的檔案呢?這就要用到檔案查詢命令,本次我們就 一下其中的find命令。find的特性 www.2cto.com 在檔案查詢命令中不僅有find命令...