Plus précisément :
"." désigne le répertoire courant ('ls -a' donne en plus des fichiers "." et ".." qui sont le rép courant et le rép parent. D'où le "cd .."). Et "/" est le séparateur.
Pour lancer un programme, le shell a besoin de son nom et de son chemin.
Si on tape le nom sans chemin, le shell le cherche dans les répertoires de PATH.
Si on met un chemin, 2 cas :
- chemin absolu. par ex "/usr/bin/toto". Pas de problème, avec le chemin absolu le shell sait où se trouve le binaire.
- chemin relatif : foo/bar/toto. La recherche se fait par rapport au répertoire courant.
Donc si "." n'est pas dans le PATH - le cas le plus frequent -, pour lancer un script du répertoire courant la syntaxe la plus courte est bien "./toto" - ici on est dans le dernier cas, recherche par rapport au répertoire courant, le chemin final étant "/le/rep/courant/" + "./toto", cad "/le/rep/courant/./toto" Le "." ici est sans effet, on boucle en fait dans le même répertoire.
[^] # Re: Execution
Posté par jigso . En réponse au message Signification de "./". Évalué à 3.
"." désigne le répertoire courant ('ls -a' donne en plus des fichiers "." et ".." qui sont le rép courant et le rép parent. D'où le "cd .."). Et "/" est le séparateur.
Pour lancer un programme, le shell a besoin de son nom et de son chemin.
Si on tape le nom sans chemin, le shell le cherche dans les répertoires de PATH.
Si on met un chemin, 2 cas :
- chemin absolu. par ex "/usr/bin/toto". Pas de problème, avec le chemin absolu le shell sait où se trouve le binaire.
- chemin relatif : foo/bar/toto. La recherche se fait par rapport au répertoire courant.
Donc si "." n'est pas dans le PATH - le cas le plus frequent -, pour lancer un script du répertoire courant la syntaxe la plus courte est bien "./toto" - ici on est dans le dernier cas, recherche par rapport au répertoire courant, le chemin final étant "/le/rep/courant/" + "./toto", cad "/le/rep/courant/./toto" Le "." ici est sans effet, on boucle en fait dans le même répertoire.