2010-07-30 85 views
0

我正在嘗試編寫一個簡單的bash腳本來搜索目錄中具有特定擴展名的文件。然後輸出所有這些文件在前面的完整路徑。用於將目錄詳細信息輸出到文件的Bash腳本

例如,如果我有一個目錄有很多不同的文件類型,但我想知道那些只有.txt擴展名的信息。我怎樣才能得到一個新的文件輸出到與此類似:

/home/jason/code/test1.txt 
/home/jason/code/test2.txt 
. 
. 
. 

所有我現在是這樣的,這是不是真的什麼,我試圖做的,但它只是我在實驗的嘗試因爲我是新的:

ls *.txt >prog_list.txt 
pwd >pwd.txt 
cat pwd.txt prog_list.txt > prog_dir.txt 
+0

問了不同的方式,但是這是一個近欺騙:http://stackoverflow.com/questions/246215/how- can-i-list-files-with-their-absolute-path-in-linux – hometoast 2010-07-30 19:26:23

回答

2
find /home/jason/code -iname "*.txt" > prog_dir.txt 
+0

有沒有辦法做到這一點,以便它可以在腳本運行時在任何目錄中工作?有點像「find pwd -iname」* .txt「> prog_dir.txt」 – 2010-07-30 19:23:27

+0

是的。 'find \'pwd \'-iname「* .txt」> prog_dir.txt'注意pwd附近的反引號。 – 2010-07-30 19:25:37

+0

啊,這就是爲什麼它不工作..感覺很好,至少我接近。 謝謝阿馬爾 – 2010-07-30 19:28:22

0

會是這樣的:

 

find . -name *.txt -print 
 

有竅門嗎?

+0

必須引用該模式。 – Philipp 2010-07-30 22:00:22

1
$>find -name "*.yourext" > myFile.txt 

有關find命令,類型的詳細信息:

$>man find