2011-04-17 181 views
0

我正在查找使用grep在/ usr/bin中搜索具有2個鏈接的所有文件並按升序對其進行排序的命令。grep命令查找文件

我要找必須使用的第一個和顯示器只包含了「X」的文件

感謝您

+0

你的問題是什麼? – 2011-04-17 22:07:01

+1

「按升序排序」 - 按升序排序?通過參考數量?或通過修改日期?或按名稱? – Beel 2011-04-17 22:13:45

回答

1

這將做

find /usr/bin -links 2 -print0 | xargs -0 ls -adltr 

修改LS做你需要包含的 「X」

find /usr/bin -links 2 -print0 | xargs -0 grep -l "x" 

文件排序:)


如果您的意思是: '包含X' 爲「是可執行文件(X出現在ls -l命令輸出),可使用

find /usr/bin -links 2 -executable -print0 | ls -adltr 

要看到的只是顯示目錄:

find /usr/bin -links 2 -type d -executable -print0 | ls -adltr 

僅查看文件:

find /usr/bin -links 2 -type f -executable -print0 | ls -adltr 

注:目錄獲得默認2個鏈接(.是一個鏈接),所以你可能要尋找-links 3使用目錄

+0

添加發現不可預知的文件的預感;我不太確定什麼_'「x」'_將意味着:) – sehe 2011-04-17 23:03:00

+0

對我有趣的結果:perlbug :) – 2011-04-17 23:27:57

+0

@user unk:硬鏈接到/ usr/bin/perlthanks對我:) – sehe 2011-04-18 00:01:40

2

你可以從這個grep的直接,如:

grep -r --include=*.py "HOSTS" . 

將搜索遞歸( '-r')中的所有Python文件的當前目錄(」。 ')下(' *。 py')爲字符串「HOSTS」。