[Unix] Mettre une commande en Alias
Résolu
Trezeg
Messages postés
81
Statut
Membre
-
Trezeg Messages postés 81 Statut Membre -
Trezeg Messages postés 81 Statut Membre -
Bonjour,
J'essaie de faire pointer ma commande more vers le fichier /usr/xpg4/bin/moremais ce ne fonctionne pas... :-// J'ai pourtant créé l'alias qui va bien et modifié le .bashrc en conséquence :
D'avance merci.
Trez
J'essaie de faire pointer ma commande more vers le fichier /usr/xpg4/bin/moremais ce ne fonctionne pas... :-// J'ai pourtant créé l'alias qui va bien et modifié le .bashrc en conséquence :
bash-2.05$ alias more='/usr/xpg4/bin/more' bash-2.05$ alias alias more='/usr/xpg4/bin/more' bash-2.05$ bash-2.05$ more .bashrc alias more='/usr/xpg4/bin/more' bash-2.05$Cela dit, rien n'y fait car la commande whereis m'indique ceci:
bash-2.05$ whereis more more: /usr/bin/more /usr/lib/more.help /usr/ucb/more bash-2.05$Auriez-vous une idée sur la question ?
D'avance merci.
Trez
A voir également:
- [Unix] Mettre une commande en Alias
- Invite de commande - Guide
- Commande terminal mac - Guide
- Diskpart commande - Guide
- Commande dism - Guide
- Commande scannow - Guide
10 réponses
Salut,
Source ton fichier ".bashrc" :
Jette un oeil à ce thread.
Source ton fichier ".bashrc" :
source ~/.bashrcet relance ta commande "whereis".
Jette un oeil à ce thread.
Salut,
J'essaie de faire pointer ma commande more
Ce n'est pas une commande. C'est juste un alias pour la vrai commande.
Je pense que tu n'as pas compris le rôle de PATH ni se qu'affiche la commande whereis
bash la variable d environnement path
guide d utilisation du shell pour debutant#xiii ou se trouvent les commandes
J'essaie de faire pointer ma commande more
Ce n'est pas une commande. C'est juste un alias pour la vrai commande.
Je pense que tu n'as pas compris le rôle de PATH ni se qu'affiche la commande whereis
bash la variable d environnement path
guide d utilisation du shell pour debutant#xiii ou se trouvent les commandes
Salut jipicy,
j'ai effectivement sourcé le .bashrcen vain... J'ai également ajouté le chemin /usr/xpg4/bin/ à la suite de mon PATH mais rien n'y fait...
Trez
j'ai effectivement sourcé le .bashrcen vain... J'ai également ajouté le chemin /usr/xpg4/bin/ à la suite de mon PATH mais rien n'y fait...
Trez
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Salut,
J'ai ajouté le nom du répertoire de la commande morevoulue dans mon path:
Trez
J'ai ajouté le nom du répertoire de la commande morevoulue dans mon path:
bash-2.05$ PATH=$PATH:/usr/xpg4/binMalgré cela, ce répertoire n'apparait pas quand on fait un whereis more...
Trez
DESCRIPTION
whereis locates source/binary and manuals sections for specified files.
The supplied names are first stripped of leading pathname components
and any (single) trailing extension of the form .ext, for example, .c.
Prefixes of s. resulting from use of source code control are also
dealt with. whereis then attempts to locate the desired program in a
list of standard Linux places.
/bin
/usr/bin
/etc
/usr/etc
/sbin
/usr/sbin
/usr/games
/usr/games/bin
/usr/emacs/etc
/usr/lib/emacs/19.22/etc
/usr/lib/emacs/19.23/etc
/usr/lib/emacs/19.24/etc
/usr/lib/emacs/19.25/etc
/usr/lib/emacs/19.26/etc
/usr/lib/emacs/19.27/etc
/usr/lib/emacs/19.28/etc
/usr/lib/emacs/19.29/etc
/usr/lib/emacs/19.30/etc
/usr/TeX/bin
/usr/tex/bin
/usr/interviews/bin/LINUX
/usr/bin/X11
/usr/X11/bin
/usr/X11R5/bin
/usr/X11R6/bin
/usr/X386/bin
/usr/local/bin
/usr/local/etc
/usr/local/sbin
/usr/local/games
/usr/local/games/bin
/usr/local/emacs/etc
/usr/local/TeX/bin
/usr/local/tex/bin
/usr/local/bin/X11
/usr/contrib
/usr/hosts
/usr/include
/usr/g++-include
A prioris si un fichier se trouve dans le path, mais pas dans ces dossiers là, il n'apparaitra jamais dans le resultat de la commande <gras<whereis</gras>
Dans le lien que je t'ai donné unix mettre une commande en alias#2
tu pouvais déjà voir que pour ton cas il faut utiliser la commande which
asevere à raison
tu pouvais déjà voir que pour ton cas il faut utiliser la commande which
asevere à raison
Hello,
J'ai également fait l'export... J'ai certainement mal expliqué mon problème.
En gros, je voudrais que ma commande more appelle le /usr/xpg4/bin/more plutot que le /usr/bin/more qui est initialement appelé...
Trez
J'ai également fait l'export... J'ai certainement mal expliqué mon problème.
En gros, je voudrais que ma commande more appelle le /usr/xpg4/bin/more plutot que le /usr/bin/more qui est initialement appelé...
Trez
Enfin dans ce cas précis, tu n'as pas forcement besoin d'un alias d'ailleurs.
Si /usr/xpg4/bin est trouvé avant /usr/bin dans le PATH, il sera appelé.
@+
Si /usr/xpg4/bin est trouvé avant /usr/bin dans le PATH, il sera appelé.
PBG4:~ adrien$ echo $PATH /opt/local/bin:/opt/local/sbin:/sw/bin:/sw/sbin: /bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin: /Users/adrien/bin:/Volumes/Data/Softs/Others/Apache/Ant/bin PBG4:~ adrien$ alias alias celeron='ssh 192.168.8.2' alias gvi='/Volumes/Data/Softs/Others/Vim/gvim' alias ll='ls -l -G' alias ls='ls -G' alias mplayer='/Volumes/Data/Softs/Others/Mplayer/MPlayer\ OSX.app/Contents/MacOS/MPlayer\ OSX' alias vtvim='TERM=pcansi /sw/bin/vim' PBG4:~ adrien$ which more /usr/bin/more PBG4:~ adrien$ more bin4more/more #!/bin/bash echo "mon more" cat $@ PBG4:~ adrien$ export PATH=/Users/adrien/bin4more:$PATH PBG4:~ adrien$ echo $PATH /Users/adrien/bin4more:/opt/local/bin: /opt/local/sbin:/sw/bin:/sw/sbin:/bin:/sbin:/usr/bin: /usr/sbin:/usr/X11R6/bin:/Users/adrien/bin: /Volumes/Data/Softs/Others/Apache/Ant/bin PBG4:~ adrien$ which more /Users/adrien/bin4more/more PBG4:~ adrien$ more bin4more/more mon more #!/bin/bash echo "mon more" cat $@
@+
Ben apparemment c'est bon : "more is aliased to `/usr/xpg4/bin/more'".
Normalement il devrait être pris en compte avant ceux se trouvant dans le $PATH.
Quelle(s) différence(s) a cette version par rapport à la version "/bin/more" ?
Normalement il devrait être pris en compte avant ceux se trouvant dans le $PATH.
Quelle(s) différence(s) a cette version par rapport à la version "/bin/more" ?