Inserimento di uno spazio tra ogni lettera

Inserisci uno spazio tra ogni lettera.

 $ echo -e "ciao lifenand ciao a te" | sed 's /./& / g'

h el lolife

andhellotoyou

  • Il problema è che lo spazio naturale tra ogni parola è raddoppiato. Per risolvere questo basta aggiungere:

 $ echo -e "ciao lifenand ciao a te" | sed 's /./& / g; s / / / g'

h el lolife

andhellotoyou

$

  • Ecco una variante. Rispetto alla sostituzione precedente e fatto in un colpo solo s ///

 $ echo -e "ciao lifenand ciao a te" | sed -r 's / ([^]) / 1 / g'

h el lolife

andhellotoyou

  • Se non si desidera utilizzare l'opzione-r

sed 's / ([^]) / 1 / g'

[^ ...] personaggio di classe

  • [^ ...] - È integrata una classe di caratteri che significa "riconoscere un personaggio non elencato", non usare il figlio con "non riconoscere un personaggio elencato.
  • Nel nostro caso può essere tradotto "per riconoscere un personaggio che non è spazio".
Articolo Precedente Articolo Successivo

I Migliori Consigli