OVH Cloud OVH Cloud

[help] alias

18 réponses
Avatar
Gilles
Bonjour,

J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?

Merci
---
Gilles
Oter le ot pour m'écrire

10 réponses

1 2
Avatar
Saïd
Gilles :
Bonjour,

J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?



Pour ce genre de chose la bonne methode est de modifier ta variable PATH.

Si tu es sous bash ou zsh:

export PATH=/usr/local/bin:$PATH

A ajouter au .zshrc si tu es sous zsh et .bashrc sous bash.

Pour tcsh il faut demander a qqn d'autre.

Sinon, pour revenir a ta question d'origine, qu'as tu tape exactement et ou
te trouvais-tu au moment de taper ta commande?

si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.

--
Saïd.

Avatar
Schmurtz
J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?



Pour ce genre de chose la bonne methode est de modifier ta variable PATH.

Si tu es sous bash ou zsh:

export PATH=/usr/local/bin:$PATH

A ajouter au .zshrc si tu es sous zsh et .bashrc sous bash.

Pour tcsh il faut demander a qqn d'autre.

Sinon, pour revenir a ta question d'origine, qu'as tu tape exactement et ou
te trouvais-tu au moment de taper ta commande?

si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.


Mais comme par défaut tu es sous tcsh, ça ne marcheras pas. Pour tcsh,
il faut rajouter dans le fichier /etc/csh.login (pour tout les
utilisateurs) ou /Users/tonlogin/.login (uniquement pour toi):

setenv PATH "${PATH}:/usr/local/bin"

Ceci permet d'accéder à toutes les commandes de /usr/local/bin
directement (sans avoir à taper le chemin d'accès entier).

--
Schmurtz


Avatar
pierre.ducrot
Gilles wrote:

Bonjour,

J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?


je suis d'accord avec la modification du PATH mais pour répondre
directement à ta question:

ln -s /usr/local/bin locbin
après tu n'as plus qu'à taper locbin ou créer un autre alias si tu
n'aimes pas locbin ;-p
--
Pierre

Avatar
Gilles
Schmurtz wrote:
J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?



Pour ce genre de chose la bonne methode est de modifier ta variable PATH.

Si tu es sous bash ou zsh:

export PATH=/usr/local/bin:$PATH

A ajouter au .zshrc si tu es sous zsh et .bashrc sous bash.

Pour tcsh il faut demander a qqn d'autre.

Sinon, pour revenir a ta question d'origine, qu'as tu tape exactement et ou
te trouvais-tu au moment de taper ta commande?

si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.



Mais comme par défaut tu es sous tcsh, ça ne marcheras pas. Pour tcsh,
il faut rajouter dans le fichier /etc/csh.login (pour tout les
utilisateurs) ou /Users/tonlogin/.login (uniquement pour toi):

setenv PATH "${PATH}:/usr/local/bin"

Ceci permet d'accéder à toutes les commandes de /usr/local/bin
directement (sans avoir à taper le chemin d'accès entier).




Merci !
Vous m'épatez
--
Gilles
Otez le ot pour m'écrire



Avatar
Gilles
Saïd wrote:

Gilles :

Bonjour,

J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?




Pour ce genre de chose la bonne methode est de modifier ta variable PATH.

Si tu es sous bash ou zsh:

export PATH=/usr/local/bin:$PATH

A ajouter au .zshrc si tu es sous zsh et .bashrc sous bash.

Pour tcsh il faut demander a qqn d'autre.


Le setenv a bien marché
Quetion bête : pourquoi ImageMagick est-il allé s'installer là
où le shell ne le trouve pas (ou inversement). Sous 10.1 je
tapais directement "identify" ou "convert", il y a vraiment
quelque chose qui m'échappe.

Sinon, pour revenir a ta question d'origine, qu'as tu tape exactement et ou
te trouvais-tu au moment de taper ta commande?


/usr/local/bin identify /users/mon_login/pictures/image.gif (je
me trouvais dans, heu... là : [nom_du_mac :~] mon_login%)

si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.

Je connais "peu" l'architecture des fichiers UNIX mais là, je ne

comprend pas ce que tu me dis !

En tout cas merci de m'aider

--
Gilles
Oter le ot pour m'écrire


Avatar
Schmurtz
In article <3f4e5732$0$20950$,
Gilles wrote:

Schmurtz wrote:

J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?



Pour ce genre de chose la bonne methode est de modifier ta variable PATH.

Si tu es sous bash ou zsh:

export PATH=/usr/local/bin:$PATH

A ajouter au .zshrc si tu es sous zsh et .bashrc sous bash.

Pour tcsh il faut demander a qqn d'autre.

Sinon, pour revenir a ta question d'origine, qu'as tu tape exactement et ou
te trouvais-tu au moment de taper ta commande?

si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.



Mais comme par défaut tu es sous tcsh, ça ne marcheras pas. Pour tcsh,
il faut rajouter dans le fichier /etc/csh.login (pour tout les
utilisateurs) ou /Users/tonlogin/.login (uniquement pour toi):

setenv PATH "${PATH}:/usr/local/bin"

Ceci permet d'accéder à toutes les commandes de /usr/local/bin
directement (sans avoir à taper le chemin d'accès entier).

Merci, ça fonctionne. Est-ce définitif ?



Qu'entends-tu par définitif ? Si tu veux savoir s'il faudra que tu
refasses la manip à chaque fois, tu seras heureux de savoir que non. En
effet, les commandes du fichier .login sont exécutées à chaque fois que
tu ouvre un terminal.

--
Schmurtz




Avatar
Schmurtz
Le setenv a bien marché
Quetion bête : pourquoi ImageMagick est-il allé s'installer là
où le shell ne le trouve pas (ou inversement).


Je penche plutôt pour le inversement. Installer des programmes dans
/usr/local/bin et chose courante sous les divers unix.

En fait, /bin contient les commandes indispensables.
/usr/bin contient les commandes livrées avec le système.
/usr/local/bin contient tout ce que tu veux rajouter.

Sous 10.1 je
tapais directement "identify" ou "convert", il y a vraiment
quelque chose qui m'échappe.


Parce que l'installation s'effectuait dans /usr/bin, ou alors à l'époque
/usr/local/bin était dans le PATH.

Sinon, pour revenir a ta question d'origine, qu'as tu tape exactement et ou
te trouvais-tu au moment de taper ta commande?


/usr/local/bin identify /users/mon_login/pictures/image.gif (je
me trouvais dans, heu... là : [nom_du_mac :~] mon_login%)


/usr/local/bin/identify plutôt, non ?

si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.


Je connais "peu" l'architecture des fichiers UNIX mais là, je ne
comprend pas ce que tu me dis !


Moi, je connais pas trop mal, mais je ne comprends pas ce qui a voulu
dire. $HOME (qui contient /Users/ton_login/) n'a pas à être dans le PATH
car le PATH n'a à contenir que les dossiers contenant des commandes du
terminal.

--
Schmurtz


Avatar
Gilles
Schmurtz wrote:

In article <3f4e5732$0$20950$,
Gilles wrote:


Schmurtz wrote:


J'essaie de créer des alias dans le Terminal pour ne pas avoir à
taper le chemin complet (c'est bien à çà que ça sert ?) avec la
commande "ln" mais je n'y arrive pas.

Je veux éviter de taper /usr/local/bin convert ou ...vim par
exemple.

Pouvez-vous m'éclairer ?



Pour ce genre de chose la bonne methode est de modifier ta variable PATH.

Si tu es sous bash ou zsh:

export PATH=/usr/local/bin:$PATH

A ajouter au .zshrc si tu es sous zsh et .bashrc sous bash.

Pour tcsh il faut demander a qqn d'autre.

Sinon, pour revenir a ta question d'origine, qu'as tu tape exactement et ou
te trouvais-tu au moment de taper ta commande?

si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.



Mais comme par défaut tu es sous tcsh, ça ne marcheras pas. Pour tcsh,
il faut rajouter dans le fichier /etc/csh.login (pour tout les
utilisateurs) ou /Users/tonlogin/.login (uniquement pour toi):

setenv PATH "${PATH}:/usr/local/bin"

Ceci permet d'accéder à toutes les commandes de /usr/local/bin
directement (sans avoir à taper le chemin d'accès entier).



Merci, ça fonctionne. Est-ce définitif ?



Qu'entends-tu par définitif ? Si tu veux savoir s'il faudra que tu
refasses la manip à chaque fois, tu seras heureux de savoir que non. En
effet, les commandes du fichier .login sont exécutées à chaque fois que
tu ouvre un terminal.

C'était bien ma question (et ça marche toujours !)

Ces minuscules "victoires de l'homme sur la machine" sont bien
agréables.
Puis-je aller voir ce fichier .login ? le "." signifie que c'est
un fichier de préférences ?





Avatar
Schmurtz
C'était bien ma question (et ça marche toujours !)
Ces minuscules "victoires de l'homme sur la machine" sont bien
agréables.


Le plus marrant, c'est que c'est l'homme qui à créé la machine assez
compliquée pour pouvoir s'emmerder à résoudre ces problèmes.

Puis-je aller voir ce fichier .login ? le "." signifie que c'est
un fichier de préférences ?


Le "." fait entièrement partie du nom du fichier. La convention veut
qu'un fichier commençant par un point soit un fichier caché.

Le fichier .login est situé dans le dossier Départ. Comme il est caché,
tu ne peux pas l'ouvrir directement, il faut passer par le Terminal.
Comme par défaut, tu es dans ton dossier perso lorsque tu ouvres un
terminal, il suffit de taper :

open -e .login

Ce fichier n'est actif que pour ton utilisateur. Si tu veux que des
commandes soient exectués pour tout le monde, il faut modifier le
fichier /etc/csh.login

--
Schmurtz

Avatar
Saïd
Schmurtz :
si tu etais dans ton repertoire racine c'est normal que ca n'ait pas marche
car ton $HOME n'est pas dans le path.


Je connais "peu" l'architecture des fichiers UNIX mais là, je ne
comprend pas ce que tu me dis !


Moi, je connais pas trop mal, mais je ne comprends pas ce qui a voulu
dire. $HOME (qui contient /Users/ton_login/) n'a pas à être dans le PATH
car le PATH n'a à contenir que les dossiers contenant des commandes du
terminal.



Si tu fais:

cd $HOME
ln -s /usr/local/bin trucmuche

Tu auras beau taper trucmuche/application ca ne marcheras que si $HOME est
dans le path ou que tu es dans $HOME et que "." est dans le path.

--
Saïd.



1 2