更改目录中所有符号链接目标的属性

更改目录中所有符号链接目标的属性

如何更改目录内所有符号链接目标的属性?

/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

这会

  1. 通过实用程序找到链接并返回以换行符分隔的目标readlink
  2. 在换行符上拆分传入的参数并chattr在所有目标上运行。

如果文件名中有换行符,则可能会出现问题,但这通常只是一个假设性的问题。

答案2

/usr/bin/find /mydir -type l -exec /usr/bin/chattr +s '{}' \;

相关内容