Trucs:Supprimer les espaces dans un nom de fichier
Aller à la navigation
Aller à la recherche
AdN<>
Stop!!!
Il suffit que j'écrive un script, que je tape une commande, et mes fichiers dont le nom contient des espaces m'obligent à utiliser les \
, ""
ou ''
Voyons comment remplacer ces espaces par des _
#!/bin/sh
for a in * ;do
b=$(echo $a | sed -e 's/[[:blank:]]/_/g');
if [ -e "$b" ];then
echo "">/dev/null;
else
mv "$a" "$b";
fi
done
for a in * ;do
b=$(echo $a | sed -e 's/[[:blank:]]/_/g');
if [ -e "$b" ];then
echo "">/dev/null;
else
mv "$a" "$b";
fi
done
et vous ?
Note de Jean-Thomas MUYL (maston28) :
Il suffit en fait d'utiliser la commande tr
for i in * ;
do
a=`echo $i | tr "[:blank:]" "_"`
mv "$i" "$a"
done
do
a=`echo $i | tr "[:blank:]" "_"`
mv "$i" "$a"
done
Ca revient au même, mais c'est toujours intéressant de connaître deux manières de faire quelque chose hein :)
note de Raph_
on peut aussi utiliser rename 's/[[:blank:]]/_/g' *