Ich möchte ln -s
alle Dateien verknüpfen ( ), die /mnt/usr/lib/
in sind/usr/lib/
Es gibt viele Dateien, wie geht das schnell? :) :)
Ich möchte ln -s
alle Dateien verknüpfen ( ), die /mnt/usr/lib/
in sind/usr/lib/
Es gibt viele Dateien, wie geht das schnell? :) :)
Antworten:
ln -s /mnt/usr/lib/* /usr/lib/
Ich denke, das gehört allerdings dem Superuser.
GNU cp
hat die Option, Symlinks zu erstellen, anstatt sie zu kopieren.
cp -rs /mnt/usr/lib /usr/
Beachten Sie, dass dies eine GNU-Erweiterung ist, die in POSIXcp
nicht gefunden wurde .
ln -s /mnt/usr/lib/* /usr/lib/
Die veröffentlichten Lösungen verknüpfen keine versteckten Dateien. Versuchen Sie Folgendes, um sie einzuschließen:
cd /usr/lib
find /mnt/usr/lib -maxdepth 1 -print "%P\n" | while read file; do ln -s "/mnt/usr/lib/$file" "$file"; done
Wenn Sie rekursiv passieren zu wollen, auf die Verzeichnisse und nur Link - Dateien erstellen (so , dass , wenn Sie eine Datei in einem Verzeichnis zu erstellen, ist es wirklich in /usr/lib
nicht /mnt/usr/lib
), können Sie dies tun:
cd /usr/lib
find /mnt/usr/lib -mindepth 1 -depth -type d -printf "%P\n" | while read dir; do mkdir -p "$dir"; done
find /mnt/usr/lib -type f -printf "%P\n" | while read file; do ln -s "/mnt/usr/lib/$file" "$file"; done
./
und aus ../
):ln -s /mnt/usr/lib/.!(|.)* /usr/lib