Dato il file lista_spesa.txt il cui contenuto é:

   pere  
 pesche  
     banane  
mele

vorrei sapere se esiste un modo a riga di comando per eliminare gli spazi a inizio riga, a prescindere dalla loro lunghezza, preferibilmente con sed. L'output finale dovrebbe quindi essere:
pere
pesche
banane
mele
Grazie anticipatamente.

chiesto 30 Dec '15, 09:33

piccolo%20principiante's gravatar image

piccolo prin...
157242634


Non è necessario utilizzare un loop, e non serve neanche l'opzione "g":

sed -i 's/^ *//' nomefile
coll. permanente

ha risposto 31 Dec '15, 10:26

enzotib's gravatar image

enzotib ♦♦
14.1k113187

Avevo provato con una sintassi simile senza successo: sed -i 's/^* //g' nomefile.
Evidentemente era sbagliata.
Grazie.

(31 Dec '15, 10:53) piccolo prin... piccolo%20principiante's gravatar image

Ok, ragionandoci su un po' ho elaborato un piccolissimo script bash che risolve il problema.
Lo riporto, nel caso qualcuno altrettanto inesperto quanto me possa giovarsene.
Dunque, supponendo 20 il numero massimo di spazi vuoti a inizio riga:

k=20  
i=1

while [ $i -le $k ]; do  
sed -i 's/^ //g' lista_spesa.txt 
((i++))  
done

exit 0
coll. permanente

ha risposto 30 Dec '15, 22:42

piccolo%20principiante's gravatar image

piccolo prin...
157242634

La tua risposta
abilita/disabilita anteprima

Segui questa domanda

Via email:

Una volta eseguito l'accesso potrai iscriverti a tutti gli aggiornamenti qui

Via RSS:

Risposte

Risposte e commenti

Basi di markdown

  • *corsivo* o __corsivo__
  • **grassetto** o __grassetto__
  • collegamento:[testo](http://url.com/ "titolo")
  • immagine?![alt testo](/path/img.jpg "titolo")
  • elenco numerato: 1. Foo 2. Bar
  • per aggiungere un'interruzione di riga, aggiungi due spazi a fine riga e premi «Invio»
  • è supportato anche semplice HTML

Tag:

×106
×15

domanda posta: 30 Dec '15, 09:33

domanda visualizzata: 6,577 volte

ultimo aggiornamento: 31 Dec '15, 10:53

Chiedi è un servizio di supporto gestito da Ubuntu-it. Contattaci!

powered by OSQAPostgreSQL database
Ubuntu e Canonical sono marchi registrati da Canonical Ltd.