Von der Standardeingabe gespeiste UnionFS- (oder AUFS-)Zweige mounten?

Von der Standardeingabe gespeiste UnionFS- (oder AUFS-)Zweige mounten?

Ist es möglich, die Verzweigungspfade von stdin an den Mount-Befehl (oder mount_unionfs) weiterzugeben, anstatt sie als Argumente oder aus einer Datei bereitzustellen?

cat ~/dirs_with_photos.txt | mount -t unionfs

Ich möchte nicht verwenden /etc/fstab, da ich diese TXT-Dateien idealerweise automatisch dynamisch generieren möchte, beispielsweise mit einem Cron-Job:

@weekly  find $HOME -type d -iname "*photos*" > ~/dirs_with_photos.txt

Antwort1

Transformieren Sie die Eingabe in die erforderliche Syntax und fügen Sie sie in die Befehlszeile ein mit einemBefehlsersetzung.

dirs_with_photos="$(<~/dirs_with_photos.txt tr '\n' :)"
if [ -n "$dirs_with_photos" ]; then
  unionfs-fuse "${dirs_with_photos%:}" /photos
fi

Mitmount_unionfsSie müssen einen Mount-Befehl pro Verzeichnis ausführen. Sie können einenSchleife um den readeingebauten.

while IFS= read -r dir; do
  mount_unionfs "$dir" /photos
done <~/dirs_with_photos.txt

verwandte Informationen