我有一个脚本,我想测试一个文件的特定权限,特别是0644,如果不是那么chmod它.
我知道我可以只是chmod它并让它落下以防它已经是那样但我想打印一条消息,它是以前的价值.
MYFILE=./myfile
为了便于阅读,我使用的是u = rw,go = r而不是octal 0644.
我假设您希望设置缺少的权限,但如果存在额外的权限,您希望让它们保持原样.
一步步:
PREV_PERM="`find \"\$MYFILE\" \! -perm -u=rw,go=r -ls`" echo "$PREV_PERM" chmod u+rw,go+r "$MYFILE"
或者将它组合成整齐的单线:
find "$MYFILE" '!' -perm -u=rw,go=r -ls -exec chmod u+rw,go+r "$MYFILE" ';'