Ändern Sie die Attribute aller Symlink-Ziele in einem Verzeichnis

1

Wie ändere ich die Attribute aller Symlink-Ziele in einem Verzeichnis?

/usr/bin/find /mydir -type l | xargs /bin/readlink | /usr/bin/chattr +s

Piping drei Befehle funktioniert nicht.

Vielen Dank.

Dan
quelle

Antworten:

1
/usr/bin/find /mydir -type l -exec /bin/readlink {} \; | xargs -d'\n' /usr/bin/chattr +s

Dieser Wille

  1. Suchen Sie die Links und geben Sie die Ziele mit Zeilenumbrüchen getrennt über das readlinkDienstprogramm und zurück
  2. Teilen Sie eingehende Argumente in Zeilenumbrüchen auf und führen Sie sie chattrauf allen Zielen aus.

Ein Problem kann auftreten, wenn Sie Zeilenumbrüche in Dateinamen haben, dies ist jedoch normalerweise nur ein hypothetisches Problem.

Daniel Andersson
quelle
0
/usr/bin/find /mydir -type l -exec /usr/bin/chattr +s '{}' \;
int
quelle