2013-07-26 38 views
2

我有一個bash腳本以下行:貓以什麼順序選擇要顯示的文件?

find . -name "paramsFile.*" | xargs -n131072 cat > parameters.txt 

我需要確保這些文件被連接起來時,我用這個命令不改變順序。例如,如果我在同一組paramsFile。*中運行此命令兩次,參數.txt應該兩次相同。我的問題是,是這樣嗎?如果不是,我怎麼確定它是?

謝謝!

編輯:相同的問題是xargs:會改變文件如何餵養貓嗎?編輯2:正如William Pursell指出的那樣,這個問題其實就是關於尋找。是否總是以相同的順序返回文件?

+1

你的問題不是關於'貓'或'xargs'。您需要質疑'find'是否會始終以相同的順序輸出文件。 –

+0

你的確是正確的先生。你知道這是怎麼回事嗎? – ohblahitsme

+0

我在標準(http://pubs.opengroup.org/onlinepubs/9699919799/utilities/find.html)中沒有看到要求它這樣做的任何內容。 –

回答

1

從描述man cat

cat命令順序讀取文件,將它們寫入標準 輸出。 文件操作數按命令行順序處理。 如果文件是單個破折號(` - ')或不存在,則cat從標準輸入讀取。如果文件是UNIX域套接字,cat連接到它 和 然後讀取它直到EOF。這補充了inetd(8)中提供的UNIX域綁定功能。

所以,是的,只要你的文件,每一次傳遞到cat以相同的順序,你會沒事的。

+0

謝謝!我認爲是這樣,但是xargs呢?這可以改變順序嗎? – ohblahitsme

+0

沒問題,我相信xargs只會讀取任何字符串順序傳遞給它。你不應該有任何擔心。我可以得到'接受答案'嗎? –

相關問題