[英]bash: conditional binary operator expected when checking if a file is readable?
我有這段代碼可以在一台Macbook上完美運行,但不能在bash的另一台Linux機器上運行。 在Linux機器上運行時,嘗試檢查變量中的文件是否可讀時,出現錯誤"conditional binary operator expected"
"syntax error near
$ {testfile} "syntax error near
”。
for file in "${@:2}"
do
if [[ ! -rf ${file} ]]
當我做到[ ! -rf "$file" ]
[ ! -rf "$file" ]
我得到: [: -rf: unary operator expected
[[ ! -r "${file}" && ! -f "${file}" ]]
要么:
[ ! -r "${file}" -a ! -f "${file}" ]
只需使用-r測試即可
if [[ ! -r ${file} ]]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.