2012-09-28 23 views
0

我要作出這樣的切換一些文件的簡單小bash腳本(特別是我的桌面圖標,所以當他們不應該對他們不會移動)切換文件不變

我的命令使文件[im] mutable:

sudo chattr +i ~/.config/xfce4/desktop/icons* 

但是,爲了讓腳本切換狀態,我需要檢查狀態,並相應地採取行動。但我不是很擅長的bash代碼和一些谷歌搜索沒有提出任何解決方案

答案可能與'lsattr'和'grep'有關,但我不知道在哪種形式他們應該採取...

(如果答案可以在if語句的形式,這將是可愛:d)

回答

1

也許

for file in ~/.config/xfce4/desktop/icons* 
do 
    sudo chattr \ 
     $(lsattr "$file" | cut -c 5 | fgrep -q 'i' \ 
      && echo "-i" || echo "+i") \ 
     "$file" 
done 

效率極其低下的,但是......

作爲「如果」 -

if lsattr "$file" | cut -c 5 | fgrep -q 'i' 
    then 
     # whatever 
    fi 
+0

很好用,謝謝:) – LordAro