528 votes

Récupère le chemin du répertoire de fichiers depuis filepath

En programmation bash Si VAR="/home/me/mydir/file.c" ,
Comment obtenir le "/home/me/mydir" .

837voto

paxdiablo Points 341644

dirname and basename sont les outils que vous recherchez pour extraire les composants du chemin:

 $ export VAR=/home/me/mydir/file.c

$ export DIR=$(dirname ${VAR})

$ echo ${DIR}
/home/me/mydir

$ basename ${VAR}
file.c
 

Ils ne sont pas des commandes internes bash mais doivent être disponibles sur la grande majorité des systèmes fonctionnant sur bash .

127voto

Emmanuel Devaux Points 902
 $ export VAR=/home/me/mydir/file.c
$ export DIR=${VAR%/*}
$ echo ${DIR}
/home/me/mydir

$echo ${VAR##*/}
file.c
 

Pour éviter la dépendance avec le nom de base et le nom de répertoire

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X