J'ai un script shell simple qui supprime les espaces de fin d'un fichier. Existe-t-il un moyen de rendre ce script plus compact (sans créer de fichier temporaire)?
sed 's/[ \t]*$//' $1 > $1__.tmp
cat $1__.tmp > $1
rm $1__.tmp
cat
pour écraser le fichier original plutôt que de mv
remplacer réellement les données dans le fichier original (c'est-à-dire que cela ne rompra pas les liens physiques). Utiliser sed -i
comme proposé dans de nombreuses solutions ne fera pas cela. IOW, continue de faire ce que tu fais.
mv
place decat
etrm
. Pourquoi utilisez-vouscat
comme ça de toute façon? Pourquoi ne pas l'utilisercp
?