shell 命令 筆記 find

2021-06-19 13:01:06 字數 1733 閱讀 3205

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檔...