Le shell va chercher les programmes dans les répertoires listés dans $PATH, et seulement dans ceux-là. le répertoire ./, soit le répertoire courant, n'y est généralement pas ajouté. Tu peux le faire dans ton fichier d'initialisation ~/.bashrc (ou autre selon ton shell) en ajoutant la ligne :
PATH=./:$PATH:
L'autocomplètement ajoute alors les exécutables du répertoire courant. Je pense que ce n'est pas le défaut parce que du coup, ta ligne de commande a un comportement différent selon dans quel répertoire tu te trouves.
Sous DOS, les exécutables étaient rangés dans des dizaines de répertoire (chaque programme ayant son répertoire d'installation). Dans les *nix, les répertoires avec exécutables sont en nombre limité et connu à l'avance (essentiellement /usr/bin et /usr/local/bin pour l'utilisateur normal, plus /sbin et /usr/sbin pour root). Comme tous les programmes y sont rassemblés, il n'est pas usuel d'avoir à exécuter des binaires placés dans des répertoires n'importe où, sauf quelques petits scripts maison. Personnellement j'ai rassemblé mes scripts dans un répertoire /home/jgo/bin/, que j'ai ajouté à $PATH, ils sont ainsi exécutables depuis n'importe quel répertoire.
# $PATH
Posté par JGO . En réponse au message Shell - renseignement. Évalué à 3.
Le shell va chercher les programmes dans les répertoires listés dans $PATH, et seulement dans ceux-là. le répertoire ./, soit le répertoire courant, n'y est généralement pas ajouté. Tu peux le faire dans ton fichier d'initialisation ~/.bashrc (ou autre selon ton shell) en ajoutant la ligne :
PATH=./:$PATH:L'autocomplètement ajoute alors les exécutables du répertoire courant. Je pense que ce n'est pas le défaut parce que du coup, ta ligne de commande a un comportement différent selon dans quel répertoire tu te trouves.
Sous DOS, les exécutables étaient rangés dans des dizaines de répertoire (chaque programme ayant son répertoire d'installation). Dans les *nix, les répertoires avec exécutables sont en nombre limité et connu à l'avance (essentiellement /usr/bin et /usr/local/bin pour l'utilisateur normal, plus /sbin et /usr/sbin pour root). Comme tous les programmes y sont rassemblés, il n'est pas usuel d'avoir à exécuter des binaires placés dans des répertoires n'importe où, sauf quelques petits scripts maison. Personnellement j'ai rassemblé mes scripts dans un répertoire /home/jgo/bin/, que j'ai ajouté à $PATH, ils sont ainsi exécutables depuis n'importe quel répertoire.