Chcę Link (ln -s) wszystkie pliki, które są w/mnt/usr/lib/do/usr/lib/LINUX: Link wszystkie pliki z jednego do innego katalogu
Istnieje wiele plików, jak to zrobić szybko? :)
Chcę Link (ln -s) wszystkie pliki, które są w/mnt/usr/lib/do/usr/lib/LINUX: Link wszystkie pliki z jednego do innego katalogu
Istnieje wiele plików, jak to zrobić szybko? :)
ln -s /mnt/usr/lib/* /usr/lib/
Chyba należy to do superużytkownika.
Nie obejmuje to ukrytych plików i łączy całe katalogi. Jeśli któryś z nich nie jest tym, czego potrzebujesz, zobacz moją odpowiedź. W przeciwnym razie jest to najkrótsza droga. – Cascabel
Masz rację. Ale biblioteki nie są zwykle ukrywane. W każdym przypadku, w które zaangażowane są pliki dotfile, twoje rozwiązanie jest bardziej przydatne. – flokra
będzie wskazywał na inny folder na stałe? – nmkyuppie
ln -s/mnt/usr/lib/*/usr/lib/
Zaksięgowane rozwiązania nie będzie link żadnych ukrytych plików. Aby włączyć je, spróbuj tego:
cd /usr/lib
find /mnt/usr/lib -maxdepth 1 -print "%P\n" | while read file; do ln -s "/mnt/usr/lib/$file" "$file"; done
Gdyby zdarzy ci się chce rekursywnie utworzyć katalogi i pliki tylko łącza (tak, że jeśli utworzyć plik w katalogu, to naprawdę jest w /usr/lib
nie /mnt/usr/lib
) można to zrobić:
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
Wierzę, że to powinno również działać jako sposób na ukrywanie się w ukrytych plikach, jeśli rozszerzony globbing został włączony w bashu. Pasuje do wszystkiego zaczynając od kropki, po czym następuje coś innego niż nic lub inna kropka (tj. Wyklucza '. /' I '../'): 'ln -s/mnt/usr/lib /.! (|.) */usr/lib' – Cascabel
GNU cp
ma możliwość utworzenia dowiązania zamiast kopiowania.
cp -rs /mnt/usr/lib /usr/
Uwaga: nie znaleziono rozszerzenia GNU in POSIX cp
.
Twoim bieżącym katalogiem powinna być/usr/aby utworzyć dowiązanie symboliczne w ten sposób –
@caf Jeśli docelowy jest istniejącym folderem, to folder lib jest tworzony wewnątrz w katalogu/usr / –
Ile plików to "dużo" i jak szybko uważasz, że "szybko"? –
To jest 50:50 czy pasowałoby do "serverfault" lub "superuser", ale to nie jest programowanie, więc nie dla stackoverflow. –