首頁 > 軟體

Linux find命令的用法實踐

2020-06-16 17:55:14

一、find命令簡介

Linux下find命令在目錄結構中搜尋檔案,並執行指定的操作。Linux下find命令提供了相當多的查詢條件,功能很強大。由於find具有強大的功能,所以它的選項也很多,其中大部分選項都值得我們花時間來了解一下。即使系統中含有網路檔案系統( NFS),find命令在該檔案系統中同樣有效,只你具有相應的許可權。 在執行一個非常消耗資源的find命令時,很多人都傾向於把它放在後台執行,因為遍歷一個大的檔案系統可能會花費很長的時間(這裡是指30G位元組以上的檔案系統)。

1.命令格式:

find pathname -options [-print -exec -ok ...]

2.命令功能:

用於在檔案樹種查詢檔案,並作出相應的處理

3.命令引數:

pathname: find命令所查詢的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄。
-print: find命令將匹配的檔案輸出到標準輸出。
-exec: find命令對匹配的檔案執行該引數所給出的shell命令。相應命令的形式為'command' {  } ;,注意{  }和;之間的空格。
-ok: 和-exec的作用相同,只不過以一種更為安全的模式來執行該引數所給出的shell命令,在執行每一個命令之前,都會給出提示,讓使用者來確定是否執行。

4.命令選項:

-name  按照檔名查詢檔案。
-perm  按照檔案許可權來查詢檔案。
-prune  使用這一選項可以使find命令不在當前指定的目錄中查詢,如果同時使用-depth選項,那麼-prune將被find命令忽略。
-user  按照檔案屬主來查詢檔案。
-group  按照檔案所屬的組來查詢檔案。
-mtime -n +n  按照檔案的更改時間來查詢檔案, - n表示檔案更改時間距現在n天以內,+ n表示檔案更改時間距現在n天以前。find命令還有-atime和-ctime 選項,但它們都和-m time選項。
-nogroup  查詢無有效所屬組的檔案,即該檔案所屬的組在/etc/groups中不存在。
-nouser  查詢無有效屬主的檔案,即該檔案的屬主在/etc/passwd中不存在。
-newer file1 ! file2  查詢更改時間比檔案file1新但比檔案file2舊的檔案。
-type  查詢某一型別的檔案,諸如:
b - 塊裝置檔案。
d - 目錄。
c - 字元裝置檔案。
p - 管道檔案。
l - 符號連結檔案。
f - 普通檔案。
-size n:[c] 查詢檔案長度為n塊的檔案,帶有c時表示檔案長度以位元組計。-depth:在查詢檔案時,首先查詢當前目錄中的檔案,然後再在其子目錄中查詢。
-fstype:查詢位於某一型別檔案系統中的檔案,這些檔案系統型別通常可以在組態檔/etc/fstab中找到,該組態檔中包含了本系統中有關檔案系統的資訊。
-mount:在查詢檔案時不跨越檔案系統mount點。
-follow:如果find命令遇到符號連結檔案,就跟蹤至連結所指向的檔案。
-cpio:對匹配的檔案使用cpio命令,將這些檔案備份到磁帶裝置中。

另外,下面三個的區別:

-amin n  查詢系統中最後N分鐘存取的檔案
-atime n  查詢系統中最後n*24小時存取的檔案
-cmin n  查詢系統中最後N分鐘被改變檔案狀態的檔案
-ctime n  查詢系統中最後n*24小時被改變檔案狀態的檔案
-mmin n  查詢系統中最後N分鐘被改變檔案資料的檔案
-mtime n  查詢系統中最後n*24小時被改變檔案資料的檔案

二、find命令的用法範例

find一些常用引數的一些常用範例和一些具體用法和注意事項。

1.使用name選項:

檔名選項是find命令最常用的選項,要麼單獨使用該選項,要麼和其他選項一起使用。  可以使用某種檔名模式來匹配檔案,記住要用引號將檔名模式引起來。  不管當前路徑是什麼,如果想要在自己的根目錄$HOME中查詢檔名符合*.log的檔案,使用~作為 'pathname'引數,波浪號~代表了你的$HOME目錄。

find ~ -name "*.log" -print 

想要在當前目錄及子目錄中查詢所有的‘ *.log‘檔案,可以用:

find . -name "*.log" -print 

想要的當前目錄及子目錄中查詢檔名以一個大寫字母開頭的檔案,可以用: 

find . -name "[A-Z]*" -print 

想要在/etc目錄中查詢檔名以host開頭的檔案,可以用: 

find /etc -name "host*" -print 

想要查詢$HOME目錄中的檔案,可以用: 

find ~ -name "*" -print 或find . -print 

要想讓系統高負荷執行,就從根目錄開始查詢所有的檔案。 

find / -name "*" -print 

如果想在當前目錄查詢檔名以一個個小寫字母開頭,最後是4到9加上.log結束的檔案: 

命令:

find . -name "[a-z]*[4-9].log" -print

輸出:

[root@localhost test]# ll

總計 316

-rw-r--r-- 1 root root 302108 11-13 06:03 log2012.log

-rw-r--r-- 1 root root    61 11-13 06:03 log2013.log

-rw-r--r-- 1 root root      0 11-13 06:03 log2014.log

-rw-r--r-- 1 root root      0 11-13 06:06 log2015.log

drwxr-xr-x 6 root root  4096 10-27 01:58 scf

drwxrwxr-x 2 root root  4096 11-13 06:08 test3

drwxrwxr-x 2 root root  4096 11-13 05:50 test4

[root@localhost test]# find . -name "[a-z]*[4-9].log" -print

./log2014.log

./log2015.log

./test4/log2014.log

[root@localhost test]#

2.用perm選項:

按照檔案許可權模式用-perm選項,按檔案許可權模式來查詢檔案的話。最好使用八進位制的許可權表示法。 

如在當前目錄下查詢檔案許可權位為755的檔案,即檔案屬主可以讀、寫、執行,其他使用者可以讀、執行的檔案,可以用: 

[root@localhost test]# find . -perm 755 -print

.

./scf

./scf/lib

./scf/service

./scf/service/deploy

./scf/service/deploy/product

./scf/service/deploy/info

./scf/doc

./scf/bin

[root@localhost test]#

還有一種表達方法:在八進位制數位前面要加一個橫杠-,表示都匹配,如-007就相當於777,-005相當於555,

命令:

find . -perm -005

輸出:

[root@localhost test]# ll

總計 316

-rw-r--r-- 1 root root 302108 11-13 06:03 log2012.log

-rw-r--r-- 1 root root    61 11-13 06:03 log2013.log

-rw-r--r-- 1 root root      0 11-13 06:03 log2014.log

-rw-r--r-- 1 root root      0 11-13 06:06 log2015.log

drwxr-xr-x 6 root root  4096 10-27 01:58 scf

drwxrwxr-x 2 root root  4096 11-13 06:08 test3

drwxrwxr-x 2 root root  4096 11-13 05:50 test4

[root@localhost test]# find . -perm -005

.

./test4

./scf

./scf/lib

./scf/service

./scf/service/deploy

./scf/service/deploy/product

./scf/service/deploy/info

./scf/doc

./scf/bin

./test3

[root@localhost test]#

3.忽略某個目錄:

如果在查詢檔案時希望忽略某個目錄,因為你知道那個目錄中沒有你所要查詢的檔案,那麼可以使用-prune選項來指出需要忽略的目錄。在使用-prune選項時要當心,因為如果你同時使用了-depth選項,那麼-prune選項就會被find命令忽略。如果希望在test目錄下查詢檔案,但不希望在test/test3目錄下查詢,可以用: 

命令:

find test -path "test/test3" -prune -o -print

輸出:

[root@localhost soft]# find test -path "test/test3" -prune -o -print

test

test/log2014.log

test/log2015.log

test/test4

test/test4/log2014.log

test/test4/log2013.log

test/test4/log2012.log

test/scf

test/scf/lib

test/scf/service

test/scf/service/deploy

test/scf/service/deploy/product

test/scf/service/deploy/info

test/scf/doc

test/scf/bin

test/log2013.log

test/log2012.log

[root@localhost soft]#

4.使用find查詢檔案的時候怎麼避開某個檔案目錄:

範例1:在test 目錄下查詢不在test4子目錄之內的所有檔案

命令:

find test -path "test/test4" -prune -o -print

輸出:

[root@localhost soft]# find test

test

test/log2014.log

test/log2015.log

test/test4

test/test4/log2014.log

test/test4/log2013.log

test/test4/log2012.log

test/scf

test/scf/lib

test/scf/service

test/scf/service/deploy

test/scf/service/deploy/product

test/scf/service/deploy/info

test/scf/doc

test/scf/bin

test/log2013.log

test/log2012.log

test/test3

[root@localhost soft]# find test -path "test/test4" -prune -o -print

test

test/log2014.log

test/log2015.log

test/scf

test/scf/lib

test/scf/service

test/scf/service/deploy

test/scf/service/deploy/product

test/scf/service/deploy/info

test/scf/doc

test/scf/bin

test/log2013.log

test/log2012.log

test/test3

[root@localhost soft]#

說明:

find [-path ..] [expression]

在路徑列表的後面的是表示式

-path "test" -prune -o -print 是 -path "test" -a -prune -o -print 的簡寫表示式按順序求值, -a 和 -o 都是短路求值,與 shell 的 && 和 || 類似如果

-path "test" 為真,則求值 -prune , -prune 返回真,與邏輯表示式為真;否則不求值 -prune,與邏輯表示式為假。如果 -path "test" -a -prune 為假,則求值 -print ,-print返回真,或邏輯表示式為真;否則不求值 -print,或邏輯表示式為真。

這個表示式組合特例可以用偽碼寫為:

if -path "test" then 

-prune 

else 

-print 

範例2:避開多個資料夾:

命令:

find test ( -path test/test4 -o -path test/test3 ) -prune -o -print

輸出:

[root@localhost soft]# find test ( -path test/test4 -o -path test/test3 ) -prune -o -print

test

test/log2014.log

test/log2015.log

test/scf

test/scf/lib

test/scf/service

test/scf/service/deploy

test/scf/service/deploy/product

test/scf/service/deploy/info

test/scf/doc

test/scf/bin

test/log2013.log

test/log2012.log

[root@localhost soft]#

說明:

圓括號表示表示式的結合。  表示參照,即指示 shell 不對後面的字元作特殊解釋,而留給 find 命令去解釋其意義。 

範例3:查詢某一確定檔案,-name等選項加在-o 之後

命令:

find test (-path test/test4 -o -path test/test3 ) -prune -o -name "*.log" -print

輸出:

[root@localhost soft]# find test ( -path test/test4 -o -path test/test3 ) -prune -o -name "*.log" -print

test/log2014.log

test/log2015.log

test/log2013.log

test/log2012.log

[root@localhost soft]#

5.使用user和nouser選項:

按檔案屬主查詢檔案:

範例1:在$HOME目錄中查詢檔案屬主為peida的檔案

命令:

find ~ -user peida -print 

範例2:在/etc目錄下查詢檔案屬主為peida的檔案:

命令:

find /etc -user peida -print 

說明:

範例3:為了查詢屬主帳戶已經被刪除的檔案,可以使用-nouser選項。在/home目錄下查詢所有的這類檔案

命令:

find /home -nouser -print

說明:

這樣就能夠找到那些屬主在/etc/passwd檔案中沒有有效帳戶的檔案。在使用-nouser選項時,不必給出使用者名稱; find命令能夠為你完成相應的工作。

6.使用group和nogroup選項:

就像user和nouser選項一樣,針對檔案所屬於的使用者組, find命令也具有同樣的選項,為了在/apps目錄下查詢屬於gem使用者組的檔案,可以用: 

find /apps -group gem -print 

要查詢沒有有效所屬使用者組的所有檔案,可以使用nogroup選項。下面的find命令從檔案系統的根目錄處查詢這樣的檔案:

find / -nogroup-print

7.按照更改時間或存取時間等查詢檔案:

如果希望按照更改時間來查詢檔案,可以使用mtime,atime或ctime選項。如果系統突然沒有可用空間了,很有可能某一個檔案的長度在此期間增長迅速,這時就可以用mtime選項來查詢這樣的檔案。 

用減號-來限定更改時間在距今n日以內的檔案,而用加號+來限定更改時間在距今n日以前的檔案。 

希望在系統根目錄下查詢更改時間在5日以內的檔案,可以用:

find / -mtime -5 -print

為了在/var/adm目錄下查詢更改時間在3日以前的檔案,可以用:

find /var/adm -mtime +3 -print

8.查詢比某個檔案新或舊的檔案:

如果希望查詢更改時間比某個檔案新但比另一個檔案舊的所有檔案,可以使用-newer選項。

它的一般形式為: 

newest_file_name ! oldest_file_name 

其中,!是邏輯非符號。 

範例1:查詢更改時間比檔案log2012.log新但比檔案log2017.log舊的檔案

命令:

find -newer log2012.log ! -newer log2017.log

輸出:

[root@localhost test]# ll

總計 316

-rw-r--r-- 1 root root 302108 11-13 06:03 log2012.log

-rw-r--r-- 1 root root    61 11-13 06:03 log2013.log

-rw-r--r-- 1 root root      0 11-13 06:03 log2014.log

-rw-r--r-- 1 root root      0 11-13 06:06 log2015.log

-rw-r--r-- 1 root root      0 11-16 14:41 log2016.log

-rw-r--r-- 1 root root      0 11-16 14:43 log2017.log

drwxr-xr-x 6 root root  4096 10-27 01:58 scf

drwxrwxr-x 2 root root  4096 11-13 06:08 test3

drwxrwxr-x 2 root root  4096 11-13 05:50 test4

[root@localhost test]# find -newer log2012.log ! -newer log2017.log

.

./log2015.log

./log2017.log

./log2016.log

./test3

[root@localhost test]#

範例2:查詢更改時間在比log2012.log檔案新的檔案 

命令:

find . -newer log2012.log -print

輸出:

[root@localhost test]# find -newer log2012.log

.

./log2015.log

./log2017.log

./log2016.log

./test3

[root@localhost test]#

9.使用type選項:

範例1:在/etc目錄下查詢所有的目錄 

命令:

find /etc -type d -print 

範例2:在當前目錄下查詢除目錄以外的所有型別的檔案 

命令:

find . ! -type d -print 

範例3:在/etc目錄下查詢所有的符號連結檔案

命令:

find /etc -type l -print

10.使用size選項:

可以按照檔案長度來查詢檔案,這裡所指的檔案長度既可以用塊(block)來計量,也可以用位元組來計量。以位元組計量檔案長度的表達形式為N c;以塊計量檔案長度只用數位表示即可。 

在按照檔案長度查詢檔案時,一般使用這種以位元組表示的檔案長度,在檢視檔案系統的大小,因為這時使用塊來計量更容易轉換。 

範例1:在當前目錄下查詢檔案長度大於1 M位元組的檔案 

命令:

find . -size +1000000c -print

範例2:在/home/apache目錄下查詢檔案長度恰好為100位元組的檔案: 

命令:

find /home/apache -size 100c -print 

範例3:在當前目錄下查詢長度超過10塊的檔案(一塊等於512位元組)

命令:

find . -size +10 -print

11.使用depth選項:

在使用find命令時,可能希望先匹配所有的檔案,再在子目錄中查詢。使用depth選項就可以使find命令這樣做。這樣做的一個原因就是,當在使用find命令向磁帶上備份檔案系統時,希望首先備份所有的檔案,其次再備份子目錄中的檔案。 

範例1:find命令從檔案系統的根目錄開始,查詢一個名為CON.FILE的檔案。 

命令:

find / -name "CON.FILE" -depth -print

說明:

它將首先匹配所有的檔案然後再進入子目錄中查詢

12.使用mount選項:

  在當前的檔案系統中查詢檔案(不進入其他檔案系統),可以使用find命令的mount選項。

範例1:從當前目錄開始查詢位於本檔案系統中檔名以XC結尾的檔案 

命令:

find . -name "*.XC" -mount -print

13、

查當前目錄下的所有普通檔案,並在- e x e c選項中使用ls -l命令將它們列出

# find . -type f -exec ls -l {} ;
-rw-r–r–    1 root      root        34928 2003-02-25  ./conf/httpd.conf
-rw-r–r–    1 root      root        12959 2003-02-25  ./conf/magic
-rw-r–r–    1 root      root          180 2003-02-25  ./conf.d/README

Fetty:姓名、性別、年齡、具體職業不詳,更無聯絡方式。 本人在部落格園發布的文章(包括但不限於:簡體中文、英文、標點符號、影象,以及以上任意組合等)均為敲打鍵盤、滑鼠、螢幕等工具所造成結果,用於檢驗本人電腦、顯示器的各項機械效能、光電效能,並不代表本人觀點,如有雷同,不勝榮幸!

14、 ok選項


查詢檔案並詢問是否要顯示
[root@linuxidc class]# find  ./  -mtime  -1  -type f  -ok  ls -l  {} ; 
< ls … ./classDB.inc.php > ? y
-rw-r–r–    1 cnscn    cnscn      13709  1月 12 12:22 ./classDB.inc.php
[root@linuxidc class]# find  ./  -mtime  -1  -type f  -ok  ls -l  {} ; 
< ls … ./classDB.inc.php > ? n
[root@linuxidc class]#

    find / -name filename -exec rm -rf {} ;
    find / -name filename -ok rm -rf {} ;

15、

查詢並交給awk去處理
[root@linuxidc class]# who  |  awk  ’{print $1"t"$2}’
cnscn    pts/0

=================================================
awk—grep—sed

[root@linuxidc class]# df  -k |  awk ‘{print $1}’ |  grep  -v  ’none’ |  sed  s"//dev///g"
檔案系統
sda2
sda1
[root@linuxidc class]# df  -k |  awk ‘{print $1}’ |  grep  -v  ’none’
檔案系統
/dev/sda2
/dev/sda1


三、 find命令答疑

我用find / -name filename| rm -rf,不成功,請問為什麼不成功?

find / -name filename -exec rm -rf {} ;
find . -name filename |rm -rf試一下{} 表示你找出來的結果。
; 則相當於“憲法”,沒什麼說頭,就是這麼規定的,在 -exec 後面需要一個表示該命令終結的的符號。可以在 man find 中找到答案。
要讓rm識別find的結果,如下:
find / -name filename |xargs rm -rf
之所以find . -name filename |rm -rf不通過,是因為rm命令不接受從標準輸入傳過來的指令
查詢含特定字串的檔案
例如查詢當前目錄下含有"the string you want find…"字串的檔案:
$find . -type f -exec grep “the string you want find…” {} ; -print

四、自己的使用經歷

1、find輸出幾個檔案的具體修改時間

[linuxidc@xingzhengzhongxin Exp]$ ls Para.1106.* Para.1107.* Para.1109.* -al
-rw-r--r--  1 linuxidc aas  5178 Apr 11 22:30 Para.1106.00000227.77.00
-rw-r--r--  1 linuxidc aas 22043 Apr 11 22:30 Para.1107.00000227.77.00
-rw-r--r--  1 linuxidc aas  7410 Apr 11 22:30 Para.1109.00000227.77.00

[linuxidc@xingzhengzhongxin Exp]$ ls Para.1106.* Para.1107.* Para.1109.* -al --time-style "+%Y-%m-%d %H:%M:%S"|awk '{print $8"t"$6" "$7}'
Para.1106.00000227.77.00    2014-04-11 22:30:44
Para.1107.00000227.77.00    2014-04-11 22:30:45
Para.1109.00000227.77.00    2014-04-11 22:30:46

[linuxidc@xingzhengzhongxin Exp]$ ls -l|find /linuxidc/Data/Para/Exp/ -name "Para.1106.*" -o -name "Para.1108.*" -o -name "Para.1109.*"     
/linuxidc/Data/Para/Exp/Para.1108.00000227.77.00
/linuxidc/Data/Para/Exp/Para.1106.00000227.77.00
/linuxidc/Data/Para/Exp/Para.1109.00000227.77.00

[linuxidc@xingzhengzhongxin Exp]$ find /linuxidc/Data/Para/Exp/ -name "Para.1106.*" -ls -o -name "Para.1108.*" -ls -o -name "Para.1109.*" -ls|sort -n
3473431  12 -rw-r--r--  1 linuxidc      aas          5178 Apr 11 22:30 /linuxidc/Data/Para/Exp/Para.1106.00000227.77.00
3473433    8 -rw-r--r--  1 linuxidc      aas          3670 Apr 11 22:30 /linuxidc/Data/Para/Exp/Para.1108.00000227.77.00
3473434  12 -rw-r--r--  1 linuxidc      aas          7410 Apr 11 22:30 /linuxidc/Data/Para/Exp/Para.1109.00000227.77.00

[linuxidc@xingzhengzhongxin Exp]$ find /linuxidc/Data/Para/Exp/ -name "Para.1106.*" -ls -o -name "Para.1108.*" -ls -o -name "Para.1109.*" -ls|sort -n|awk -F '/' '{print $6}'
Para.1106.00000227.77.00
Para.1108.00000227.77.00
Para.1109.00000227.77.00

[linuxidc@linuxidc ~]$ find /linuxidc/Data/Para/Exp/ -name "Para.1106.*" -o -name "Para.1108.*" -o -name "Para.1109.*"|xargs ls -l --time-style "+%Y-%m-%d %H:%M:%S"
-rw-r--r--  1 linuxidc aas 5178 2014-04-15 09:08:14 /linuxidc/Data/Para/Exp/Para.1106.00000223.77.00
-rw-r--r--  1 linuxidc aas 3670 2014-04-15 09:08:15 /linuxidc/Data/Para/Exp/Para.1108.00000223.77.00
-rw-r--r--  1 linuxidc aas 7410 2014-04-15 09:08:15 /linuxidc/Data/Para/Exp/Para.1109.00000223.77.00


[root@fz ~]# find /linuxidc/params/ -name "Para.1106.*" -ls -o -name "Para.1108.*" -ls -o -name "Para.1109.*" -ls|sort -n|awk -F '/' '{print $4}'
Para.1106.00000000.0000000077.00
Para.1108.00000000.0000000077.00

2、

1901引數檔案時間:

ls /linuxidc/Data/Para/Exp/Para.1901.* --full-time|awk '{print $6"t"$7}'|awk -F '.' '{print $1}'

3、

2#LC傳送封包(不能獲取昨天日期)
ls /linuxidc/Data/bak/$(date +%Y_%m_)25/Outer/Acc |wc -l
= /linuxidc/Data/bak/2015_08_25/Outer/Acc

PACC伺服器:
pacc收1#

find /linuxidc/Data/bak/$(date -d last-day +%Y_%m_%d)/Outer/Lc/ -name '*_62010001*' |wc -l

pacc收2#

find /linuxidc/Data/bak/$(date -d last-day +%Y_%m_%d)/Outer/Lc/ -name '*_62020001*' |wc -l

pacc傳送
find /linuxidc/Data/Transaction/YKT_Snd/ -name "*`date -d last-day +%y%m%d`*" |wc -l

4、另一個ls命令輸出檔案時間的寫法

 1 [linuxidc@linuxidc ~]$ cd /linuxidc/Data/Para/Exp/
 2 [linuxidc@linuxidc Exp]$ ls
 3 Para.1002.00000223.1293.00  Para.1011.00000223.6.00    Para.1101.00000223.6.00    Para.1108.00000223.80.00        Para.1919.00000223.20130307.00
 4 Para.1005.00000223.1.00    Para.1021.00000223.3.00    Para.1102.00000223.2.00    Para.1109.00000223.80.00        Para.1920.00000223.2.00
 5 Para.1006.00000223.1732.00  Para.1031.00000223.8.00    Para.1103.00000223.77.00  Para.1901.00000223.20150812.00  Para.1921.00000223.1.00
 6 Para.1007.01022300.195.00  Para.1041.00000223.2.00    Para.1104.00000223.548.00  Para.1912.00000223.20130307.00
 7 Para.1007.02022300.195.00  Para.1089.00000223.5.00    Para.1105.00000223.77.00  Para.1913.00000223.20130307.00
 8 Para.1007.1F022300.195.00  Para.1090.00000223.431.00  Para.1106.00000223.79.00  Para.1914.00000223.20130307.00
 9 Para.1007.33022300.195.00  Para.1097.00000223.1.00    Para.1107.00000223.77.00  Para.1918.00000223.20110913.00
10 [linuxidc@linuxidc Exp]$ ls -l
11 total 368
12 -rw-r--r--  1 linuxidc aas  102 Jun 12 06:35 Para.1002.00000223.1293.00
13 -rw-r--r--  1 linuxidc aas  136 Jun 12 06:35 Para.1005.00000223.1.00
14 -rw-r--r--  1 linuxidc aas  2664 Aug 12 18:51 Para.1006.00000223.1732.00
15 -rw-r--r--  1 linuxidc aas  1934 Aug  9 02:02 Para.1007.01022300.195.00
16 -rw-r--r--  1 linuxidc aas  1966 Aug  9 02:02 Para.1007.02022300.195.00
17 -rw-r--r--  1 linuxidc aas  1838 Aug  9 02:02 Para.1007.1F022300.195.00
18 -rw-r--r--  1 linuxidc aas  1790 Aug  9 02:02 Para.1007.33022300.195.00
19 -rw-r--r--  1 linuxidc aas  226 Jun 12 06:35 Para.1011.00000223.6.00
20 -rw-r--r--  1 linuxidc aas  144 Jun 12 06:35 Para.1021.00000223.3.00
21 -rw-r--r--  1 linuxidc aas  410 Jun 12 06:35 Para.1031.00000223.8.00
22 -rw-r--r--  1 linuxidc aas  108 Jun 12 06:35 Para.1041.00000223.2.00
23 -rw-r--r--  1 linuxidc aas  119 Jun 12 06:35 Para.1089.00000223.5.00
24 -rw-r--r--  1 linuxidc aas  1776 Jun 12 06:35 Para.1090.00000223.431.00
25 -rw-r--r--  1 linuxidc aas  204 Jun 12 06:35 Para.1097.00000223.1.00
26 -rw-r--r--  1 linuxidc aas  905 Jun 12 06:35 Para.1101.00000223.6.00
27 -rw-r--r--  1 linuxidc aas  1159 Jun 12 06:35 Para.1102.00000223.2.00
28 -rw-r--r--  1 linuxidc aas  764 Jun 12 06:35 Para.1103.00000223.77.00
29 -rw-r--r--  1 linuxidc aas 19598 Aug 13 02:03 Para.1104.00000223.548.00
30 -rw-r--r--  1 linuxidc aas  5763 Jun 12 06:35 Para.1105.00000223.77.00
31 -rw-r--r--  1 linuxidc aas  5658 Jun 12 06:35 Para.1106.00000223.79.00
32 -rw-r--r--  1 linuxidc aas 22043 Jun 12 06:35 Para.1107.00000223.77.00
33 -rw-r--r--  1 linuxidc aas  4342 Jun 12 06:35 Para.1108.00000223.80.00
34 -rw-r--r--  1 linuxidc aas  8018 Jun 12 06:35 Para.1109.00000223.80.00
35 -rw-r--r--  1 linuxidc aas 65876 Aug 13 03:13 Para.1901.00000223.20150812.00
36 -rw-r--r--  1 linuxidc aas  400 Jun 12 06:35 Para.1912.00000223.20130307.00
37 -rw-r--r--  1 linuxidc aas  278 Jun 12 06:35 Para.1913.00000223.20130307.00
38 -rw-r--r--  1 linuxidc aas  413 Jun 12 06:35 Para.1914.00000223.20130307.00
39 -rw-r--r--  1 linuxidc aas  252 Jun 12 06:35 Para.1918.00000223.20110913.00
40 -rw-r--r--  1 linuxidc aas  233 Jun 12 06:35 Para.1919.00000223.20130307.00
41 -rw-r--r--  1 linuxidc aas    80 Jun 12 06:35 Para.1920.00000223.2.00
42 -rw-r--r--  1 linuxidc aas    80 Jun 12 06:35 Para.1921.00000223.1.00
43
44 [linuxidc@linuxidc Exp]$  ls /linuxidc/Data/Para/Exp/*
45 /linuxidc/Data/Para/Exp/Para.1002.00000223.1293.00  /linuxidc/Data/Para/Exp/Para.1089.00000223.5.00    /linuxidc/Data/Para/Exp/Para.1109.00000223.80.00
46 /linuxidc/Data/Para/Exp/Para.1005.00000223.1.00    /linuxidc/Data/Para/Exp/Para.1090.00000223.431.00  /linuxidc/Data/Para/Exp/Para.1901.00000223.20150812.00
47 /linuxidc/Data/Para/Exp/Para.1006.00000223.1732.00  /linuxidc/Data/Para/Exp/Para.1097.00000223.1.00    /linuxidc/Data/Para/Exp/Para.1912.00000223.20130307.00
48 /linuxidc/Data/Para/Exp/Para.1007.01022300.195.00  /linuxidc/Data/Para/Exp/Para.1101.00000223.6.00    /linuxidc/Data/Para/Exp/Para.1913.00000223.20130307.00
49 /linuxidc/Data/Para/Exp/Para.1007.02022300.195.00  /linuxidc/Data/Para/Exp/Para.1102.00000223.2.00    /linuxidc/Data/Para/Exp/Para.1914.00000223.20130307.00
50 /linuxidc/Data/Para/Exp/Para.1007.1F022300.195.00  /linuxidc/Data/Para/Exp/Para.1103.00000223.77.00  /linuxidc/Data/Para/Exp/Para.1918.00000223.20110913.00
51 /linuxidc/Data/Para/Exp/Para.1007.33022300.195.00  /linuxidc/Data/Para/Exp/Para.1104.00000223.548.00  /linuxidc/Data/Para/Exp/Para.1919.00000223.20130307.00
52 /linuxidc/Data/Para/Exp/Para.1011.00000223.6.00    /linuxidc/Data/Para/Exp/Para.1105.00000223.77.00  /linuxidc/Data/Para/Exp/Para.1920.00000223.2.00
53 /linuxidc/Data/Para/Exp/Para.1021.00000223.3.00    /linuxidc/Data/Para/Exp/Para.1106.00000223.79.00  /linuxidc/Data/Para/Exp/Para.1921.00000223.1.00
54 /linuxidc/Data/Para/Exp/Para.1031.00000223.8.00    /linuxidc/Data/Para/Exp/Para.1107.00000223.77.00
55 /linuxidc/Data/Para/Exp/Para.1041.00000223.2.00    /linuxidc/Data/Para/Exp/Para.1108.00000223.80.00
56 [linuxidc@linuxidc Exp]$  ls /linuxidc/Data/Para/Exp/Para.1901.*
57 /linuxidc/Data/Para/Exp/Para.1901.00000223.20150812.00
58 [linuxidc@linuxidc Exp]$  ls /linuxidc/Data/Para/Exp/Para.1901.* --full-time
59 -rw-r--r--  1 linuxidc aas 65876 2015-08-13 03:13:23.000000000 +0800 /linuxidc/Data/Para/Exp/Para.1901.00000223.20150812.00
60 [linuxidc@linuxidc Exp]$  ls /linuxidc/Data/Para/Exp/Para.1901.* --full-time|awk '{print $6"t"$7}'
61 2015-08-13    03:13:23.000000000
62 [linuxidc@linuxidc Exp]$  ls /linuxidc/Data/Para/Exp/Para.1901.* --full-time|awk '{print $6"t"$7}'|awk -F '.' '{print $1}'
63 2015-08-13    03:13:23
64 [linuxidc@linuxidc Exp]$  ls /linuxidc/Data/Para/Exp/Para.1901.* --full-time|awk '{print $6"t"$7"t"$9}'
65 2015-08-13    03:13:23.000000000    /linuxidc/Data/Para/Exp/Para.1901.00000223.20150812.00
66 [linuxidc@linuxidc Exp]$  ls /linuxidc/Data/Para/Exp/Para.1901.* --full-time|awk '{print $6"t"$7"t"$9}'|awk -F '.' '{print $1"t"$3}'
67 2015-08-13    03:13:23    1901
68 [linuxidc@linuxidc Exp]$ 

Linux find 命令用法總結  http://www.linuxidc.com/Linux/2015-04/116854.htm

Linux下查詢檔案find命令  http://www.linuxidc.com/Linux/2014-10/108575.htm

Linux下find命令詳解 http://www.linuxidc.com/Linux/2011-08/40669.htm

文字查詢利器find的使用 http://www.linuxidc.com/Linux/2014-03/97559.htm

功能強大的find命令 http://www.linuxidc.com/Linux/2014-01/95236.htm

Linux系統find命令詳解 http://www.linuxidc.com/Linux/2014-06/103232.htm

本文永久更新連結地址http://www.linuxidc.com/Linux/2015-08/121768.htm


IT145.com E-mail:sddin#qq.com