J'ai un dossier nommé "sample" et il contient 3 fichiers. Je souhaite écrire un script shell qui lira ces fichiers dans le dossier d'exemple et le publiera sur un site HTTP à l'aide de curl.
J'ai écrit ce qui suit pour lister les fichiers dans le dossier :
for dir in sample/*; do
echo $dir;
done
Mais cela me donne le résultat suivant :
sample/log
sample/clk
sample/demo
Il y attache le dossier parent. Je veux la sortie comme suit (sans le nom du dossier parent)
log
clk
demo
Comment faire ?
Réponse acceptée :
Utilisez basename
pour supprimer le chemin d'accès principal des fichiers :
for file in sample/*; do
echo "$(basename "$file")"
done
Mais pourquoi pas :
( cd sample; ls )