如何更改目录内所有符号链接目标的属性?
/usr/bin/find /mydir -type l | xargs /bin/readlink | /usr/bin/chattr +s
管道传输三个命令不起作用。
谢谢。
答案1
/usr/bin/find /mydir -type l -exec /bin/readlink {} \; | xargs -d'\n' /usr/bin/chattr +s
这会
- 通过实用程序找到链接并返回以换行符分隔的目标
readlink
和 - 在换行符上拆分传入的参数并
chattr
在所有目标上运行。
如果文件名中有换行符,则可能会出现问题,但这通常只是一个假设性的问题。
答案2
/usr/bin/find /mydir -type l -exec /usr/bin/chattr +s '{}' \;