Bash 切换文件不可变
我需要制作一个简单的小bash脚本来切换一些文件(特别是我的桌面图标,这样它们就不会在不应该移动的时候移动) 我有使文件[im]可变的命令:Bash 切换文件不可变,bash,file-attributes,Bash,File Attributes,我需要制作一个简单的小bash脚本来切换一些文件(特别是我的桌面图标,这样它们就不会在不应该移动的时候移动) 我有使文件[im]可变的命令: sudo chattr +i ~/.config/xfce4/desktop/icons* 但是,要使脚本切换状态,我需要检查状态,并相应地执行操作。但我不太擅长bash代码,一些谷歌搜索也没有找到任何解决方案 答案可能与“lsattr”和“grep”有关,但我不确定它们应该采用哪种形式 (如果答案可以是If语句的形式,那就太好了:D)也许 for fi
sudo chattr +i ~/.config/xfce4/desktop/icons*
但是,要使脚本切换状态,我需要检查状态,并相应地执行操作。但我不太擅长bash代码,一些谷歌搜索也没有找到任何解决方案
答案可能与“lsattr”和“grep”有关,但我不确定它们应该采用哪种形式
(如果答案可以是If语句的形式,那就太好了:D)也许
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