Ä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.

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.


0
/usr/bin/find /mydir -type l -exec /usr/bin/chattr +s '{}' \;
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.