Ho un semplice script di shell che rimuove gli spazi vuoti finali da un file. C'è un modo per rendere questo script più compatto (senza creare un file temporaneo)?
sed 's/[ \t]*$//' $1 > $1__.tmp
cat $1__.tmp > $1
rm $1__.tmp
catdi sovrascrivere il file originale anziché mvsostituirà effettivamente i dati nel file originale (cioè, non interromperà i collegamenti fisici). Utilizzare sed -icome proposto in molte soluzioni non lo farà. IOW, continua a fare quello che stai facendo.
mvposto dicaterm. Perché usicatcosì comunque? Perché non usarecp?