Comment créer un lien souple ou symbolique?

352

J'installe p4v dans /opt , mais /usr/bin est sur mon chemin. Est-il possible de créer un lien souple ou symbolique pour p4v de /opt à /usr/bin , alors je peux simplement taper "p4v" puisque /usr/bin est sur mon chemin?

    
posée coffee 08.08.2011 - 21:17
la source

7 réponses

501

Voir man ln .
Pour créer un lien symbolique /usr/bin/bar = & gt; /opt/foo , (c'est-à-dire créer un lien symbolique à /usr/bin/bar qui référence le fichier d'origine /opt/foo ) faire:

ln -s /opt/foo /usr/bin/bar

Vous devez appliquer la commande ci-dessus en tant que root (avec sudo ).

    
réponse donnée Michał Šrajer 08.08.2011 - 21:20
la source
27

L'erreur est que vous écrivez la commande mal. La manière correcte est

ln -s /<full>/<path>/<to>/<file> /usr/local/bin

lien

    
réponse donnée Pedro Arnoldo Machado Duran 03.04.2014 - 21:15
la source
20

Si l’exécutable 'p4v' se trouve à / opt / bin / p4v, vous pouvez simplement exécuter:

sudo ln -s /opt/bin/p4v /usr/bin/p4v
sudo chmod ugo+x /usr/bin/p4v

Il serait préférable d’ajouter / opt / bin (ou quel que soit l’exécutable) à votre chemin:

echo "export PATH=$PATH:/opt/bin" >> ~/.profile
reset
    
réponse donnée dv3500ea 08.08.2011 - 21:23
la source
4

Vérifiez l'emplacement du logiciel par ceci.

which application-name #replace for the application you are looking for

par exemple

which skype

sortie sera ceci.

/usr/bin/skype 

Pour créer le lien logiciel. Par exemple, vous souhaitez créer le lien logiciel pour skype sur votre bureau

ln -s /usr/bin/skype ~/Desktop/

Pour plus d'informations sur ln .

man ln

ou

ln --help
    
réponse donnée Hafiz Shehbaz Ali 24.06.2015 - 21:41
la source
1
ln -s -n ./TargetDirectory ./Nickname

Notez que cela fonctionne si les deux nœuds sont en dessous de vous dans le même arbre. Vous pouvez utiliser une notation relative

    La commande
  • -s en fait un lien symbolique
  • -n permet de créer un lien symbolique de type dossier
réponse donnée Mohamad El Boudi 12.12.2017 - 00:32
la source
0

S'il dit target is not a folder , cela signifie qu'il y a des espaces dans vos noms de dossiers, par exemple: New Folder a un espace

Vous devez modifier le chemin et ajouter une barre oblique inverse \ après chaque espace dans les chemins d'accès

par exemple:

ln -s /opt/bin /usr/var/New\ Folder
    
réponse donnée Sam 09.11.2017 - 05:43
la source
0

J'ai constaté qu'il est plus facile d'aller à l'endroit où vous souhaitez que le lien soit, puis de créer le lien en utilisant sudo ln -s /path/to/source/file , plutôt que de faire ln -s target source .

Donc, dans votre cas, je ferais cd /usr/bin puis sudo ln -s /opt/bin/pv4 . L’autre solution n’a pas fonctionné dans mon cas.

    
réponse donnée briankip 17.04.2018 - 19:06
la source

Lire d'autres questions sur les étiquettes