Infoga ett mellanslag mellan varje bokstav
Lägg in ett mellanslag mellan varje bokstav.
$ echo -e "hej liv och hallå till dig" | sed 's /./& / g'h el lolife
andhellotoyou
- Problemet är att det naturliga utrymmet mellan varje ord fördubblas. För att lösa detta lägg bara till:
$ echo -e "hej liv och hallå till dig" | sed 's /./&/g; s / / / g'h el lolife
andhellotoyou
$
- Här är en variant. Jämfört med föregående ersättning och gjort i ett enda skott s ///
$ echo -e "hej liv och hallå till dig" | sed-r s / ([^]) / 1 / g 'h el lolife
andhellotoyou
- Om du inte vill använda r-alternativet
sed 's / ([^]) / 1 / g'
[^ ...] klasskaraktär
- [^ ...] - Är en teckenklass kompletterad som betyder "att känna igen ett icke-noterat tecken", sonfusa inte med "att inte erkänna en listad karaktär.
- I vårt fall kan översättas "för att känna igen en karaktär som inte är utrymme".