Come creare un collegamento a una directory [chiuso]


322

Come creare un collegamento xxxa /home/jake/doc/test/2000/something/?

Supponiamo che xxxsia stato creato in /home/jakee ci si trovi attualmente /home/jake. Quando lo fai cd xxx, vai direttamente a /home/jake/doc/test/2000/something/.


3
Perché questa domanda off-topic?
Eyal Levin,

potrebbe essere considerata una domanda che appartiene a unix.stackexchange.com
jcollum

Risposte:


590

Collegamento simbolico o software (file o directory, più flessibile e auto-documentante)

#     Source                             Link
ln -s /home/jake/doc/test/2000/something /home/jake/xxx

Hard link (solo file, meno flessibile e non auto-documentante)

#   Source                             Link
ln /home/jake/doc/test/2000/something /home/jake/xxx

Ulteriori informazioni: man ln


/home/jake/xxxè come una nuova directory. Per evitare "non è una directory: nessun file o directory" , come commento @trlkly, utilizzare il percorso relativo nella destinazione, ovvero usando l'esempio:

  1. cd /home/jake/
  2. ln -s /home/jake/doc/test/2000/something xxx

48
Si noti che è necessario utilizzare un percorso completo per questa sintassi. Ho finito per usare ln "$(pwd)/relative_path" xxxper ottenere un collegamento assoluto per l' xxxutilizzo di un percorso relativo. Apparentemente, le regole di clobbering di bash non vengono ampliate per SOURCE.
sincero

ln -s / home / jake / destination / home / jake / link_name
Turako

1
"collegamento non consentito per la directory" è ciò che dice il mio debian
zbig

@zbig Come si dice, l'hard link è solo file. Per dir, usaln -s
Azuaron

1
Come detto in modo sincero, scrivi manualmente il percorso completo. Il comando "ln" non espande nemmeno la home directory "~".
Anton Tarasenko,

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.