我做了一個shell腳本來查找一個目錄的大小,並以可讀的格式(例如802M或702K)將其返回。我想計算大小之間的差異。在shell腳本中減去字符串(即數字)
這裏是我的shell腳本至今:
#!/bin/bash
current_remote_dir_size=789M
new_remote_dir_size=802M
new_size=`echo ${new_remote_dir_size} | grep -o [0-9]*`
current_size=`echo ${current_remote_dir_size} | grep -o [0-9]*`
echo "${new_size}-${current_size}"
但是腳本的輸出就是
-
我怎樣才能使減法工作?
嗯,我仍然得到一個錯誤。我將最後一行改爲'echo $(($ {new_size} - $ {current_size}))',但後來出現操作數錯誤。 – 2012-01-16 01:10:17
@mr_schlomo它適用於我的系統。看到我編輯的帖子。確保'grep'確實按照你的預期工作。 – 2012-01-16 01:11:39
哎呀!是的,'grep'是問題所在。我剛剛在我的Linux服務器上運行了我的腳本,它運行正常! – 2012-01-16 01:13:41