我正在打bash,我的任務是打印出最後修改的子文件夾中的所有文件,我只能使用一行命令。 這是我到目前爲止有:如何讓貓不打印任何東西,如果該文件夾是空的
cat "$(ls -t | head -1)"/*.*
這是正常工作,除非最新修改的文件夾爲空,在這種情況下,貓會返回一個錯誤。我需要避免這種情況,讓貓打印什麼都沒有。
我正在打bash,我的任務是打印出最後修改的子文件夾中的所有文件,我只能使用一行命令。 這是我到目前爲止有:如何讓貓不打印任何東西,如果該文件夾是空的
cat "$(ls -t | head -1)"/*.*
這是正常工作,除非最新修改的文件夾爲空,在這種情況下,貓會返回一個錯誤。我需要避免這種情況,讓貓打印什麼都沒有。
考慮將標準錯誤重定向到/dev/null
。這會導致命令產生的任何錯誤消息被髮送到標準以外的地方。如果您的cat
引發錯誤,則該消息將被髮送到其他地方,/dev/null
忽略它或某個文件,如果您想記錄它。你的命令看起來是這樣的:
cat "$(ls -t | head -1)"/*.* 2> /dev/null
的2
代表標準錯誤,以便2>
被它引導到後指定的位置。
2>的/ dev/null的 此錯誤重新方向將重新直接所有錯誤消息到轉儲不能恢復,
使用命令2>的/ dev/null的
'貓「$(ls -t | head -1)」2>/dev/null' – anubhava
非常感謝! – user5607926
歡迎來到stackoverflow!將來,將您的代碼縮進四個空格。這將讓明星顯示,因爲它阻止了所有其他特殊格式。我這次爲你修好了。 –