bash 的 if 條件
本帖最后由 ghost 于 2019-3-15 14:33 编辑我想寫一個 if 來對檔案做處理,
如果.
file a 不存在或 file a 跟 file a1 不一樣,就用 a1 蓋掉 a
如果
file a 跟 file a1 內容一樣,就刪掉 a1
因為用 diff 或 cmp 好像無法單純做到比較兩檔案內容是否一樣,所以我想用 md5sum,
但會出現 too many arguments 的錯誤
if [ ! -f /root/$code.temp ] # 正常
elif [ `md5sum "/root/$code.temp"` ] -ne [ `md5sum "/root/$code.temp1"` ] # [: too many arguments
請問 elif 裡的條件式該怎麼改才行?
然後我應該怎麼把 if 跟 elif 兩個併在一起?
(因為兩個條件要做的事是一樣的,不想多重複一次條件)
楼主为什么要用繁体字。。。。。 那不然我改用英文寫? 中间的】【不应该有 把 -ne 旁的 ] 跟 [ 拿掉,還是一樣的問題 我上網查了一下,
把
elif的 [ ] 都拿掉,改成
elif ! cmp -s /root/$code.temp /root/$code.temp1
就行了...
但還沒搞懂為什跑指令的話, [ 跟 ] 要拿掉 "
哈哈 繁体字我喜欢
页:
[1]