Une autre approche consiste à utiliser ls
lors de la lecture de la liste des fichiers dans un répertoire afin de vous donner ce que vous voulez, c'est-à-dire "juste le(s) nom(s) de fichier". Par opposition à la lecture du chemin d'accès complet au fichier et à l'extraction du composant "nom du fichier" dans le corps de la boucle for.
Exemple ci-dessous qui suit votre original :
for filename in $(ls /home/user/)
do
echo $filename
done;
Si vous exécutez le script dans le même répertoire que les fichiers, alors cela devient simplement :
for filename in $(ls)
do
echo $filename
done;