2017-10-10 42 views
-1

我有一個mv folder行顯示令人困惑的消息,因爲該文件夾中有一個套接字文件。如何避免由於套接字文件引起的linux移動錯誤?

有沒有辦法改變它,使它不會顯示這個錯誤。我並不關心這個套接字文件,因爲它的使用壽命是暫時的,我只需要確保將文件夾移動(歸檔)到另一個安全位置。

mv /tmp/env-DkKZrr3 /home/user/some-path/ 
mv: cannot stat ‘/tmp/ir-venv-DkKZrr3/10.0.0.101-cloud-user’: No such file or directory 

我知道我可以重定向標準錯誤,但我寧願只避免或忽略這些特定類型的錯誤,沒有其他人。

+0

即使你有這個警告,其他文件被移動了,對吧? – Aserre

+0

@Aserre是的,這只是一個警告,但在CI日誌上令人困惑,我想避免它。 – sorin

+0

如果您只想從'mv'中忽略所有錯誤,則可以重定向stderr的輸出:'mv/tmp/env -DkKZrr3/home/user/some-path/2>/dev/null'。但是,這將清除'mv'中的所有錯誤,包括權限錯誤。 – Aserre

回答

0

AFAIK,你不能只是「忽略」某種類型的錯誤信息。根據您的要求,我認爲這可能是更好的方式來檢查文件類型之前,你mv。您可以檢查文件是否由插座:

[ -S <yourFilePath> ] 

添加此檢查你的腳本,如果結果是True,你跳過移動文件。我認爲應該沒問題。

Grep這裏的技巧不推薦IMO,因爲如果你mv不存在的文件,錯誤信息看起來是一樣的,你不能區分它真的是一個不存在的錯誤或一個套接字文件錯誤。

相關問題