Curl
如果文件已在本地存在,請勿使用 curl 下載文件
我目前正在使用 curl:
curl https://example.com/file -o file
如果我的目錄中已經有一個文件
file
,它將被此命令覆蓋。相反,我想返回一條錯誤消息,告知該文件已經存在。是否可以僅使用 curl 來做到這一點?我沒有看到要執行此操作的標誌,並且我沒有在 bash 腳本中執行該命令,因此在執行該命令之前我無法使用比較運算符。
可以通過以下測試來測試目錄中是否存在名稱
-e
:if [ -e "filename" ]; then echo 'File already exists' >&2 exit 1 fi curl -o "filename" "URL"
如果您不想在此時終止腳本:
if [ -e "filename" ]; then echo 'File already exists' >&2 else curl -o "filename" "URL" fi
如果名稱存在,則測試將為真,無論該名稱是正常文件、目錄、命名管道還是其他類型的文件系統對象的名稱。
man test
在您的系統上查看。