find 命令在shell指令碼中會常常用到,下面記錄了一些常用的引數
find path file_name --基本語法
find path \( -name "a.t*" -o -name "b.t*" \) -print
find /home/user -path "sly*" -print --匹配檔案路徑或檔案 path與regex類似 後支援reg
find . ! -name "*.txt" --支援否定引數
find . -maxdepth 1 -type f --預設遍歷所有子目錄 可以指定層級 1為當前 以此類推
-atime 訪問時間 使用者最近一次訪問的時間
-mtime修改時間 檔案內容最後一次修改時間
-ctime 變化時間 檔案原資料最後修改時間
-amin -mmin -cmin 分鐘級
find . -type f -atime -7 --列印七天內訪問的檔案
find . -type f -atime 7 -print --列印恰好七天前被訪問的檔案
find . -type f -atime +7 --列印訪問時間超過7天的檔案
find . -type f -amin +7 --列印訪問時間超過7分鐘的檔案
find . -type f -newer file.txt -print --列印比file.txt修改時間更長的檔案
find . -type f -size +2k 大於2k的檔案
find . -type f -size -2k 小於2k的檔案 除了k b c w m g 可用
find . -type f -perm 644
find . -type f ! -perm 644
find . -type f -user root -exec chown xep {} \;
find . -type f -user root -exec cat {} \; >all_root_file.txt
find . -type f -mtime +10 -name"*.txt" -exec cp {} old \; --將10天前修改的txt檔案複製到old目錄中
find /source_path \( -name ".git" -prune \) -o \( -type f \) --過濾掉.git目錄(跳過)
find . -mtime 0 -type f |xargs -i {} scp -r {} 192.16.7.160:/var/lib/mysql/ --xargs擅長將標準輸入資料轉換為命令列引數 或 將單行轉換為多行or not
cat test.txt |xargs --將多行轉為單行
cat test.txt |xargs -n 3 將單行轉為多行 n表示為列 -d 指定定界符
cat files.txt| (while read arg; so cat $arg ; done) = cat files.txt |xargs -i{} cat {}
shell命令 find查詢命令
一般用法 find 目錄 引數 按要求列出指定目錄及其子目錄下的所有檔案和目錄,指定目錄要在引數之前限定查詢檔案型別 find type d 只列出目錄 find type f 只列出檔案限定查詢目錄的深度,僅查詢當前目錄而不查詢子目錄深度用1 find maxdepth 1 只查詢當前目錄 fin...
shell指令碼 find命令
find命令用於查詢,功能很強大,格式如下 find pathname options print exec ok pathname find命令所查詢的目錄路徑。例如用.來表示當前目錄,用 來表示系統根目錄。print find命令將匹配的檔案輸出到標準輸出。exec find命令對匹配的檔案執行...
shell程式設計 find命令
shell程式設計 find命令 find 列出當前目錄以及子目錄下的所有檔案 find name 11.png 找到當前目錄下名字為11.pngd的檔案 find name jpg 找到當前目錄下目錄所有的jpg檔案 find name jpg o name png 找到當前目錄下jpg和png檔...