Não tenho certeza se a instrução abaixo pode ser feita colocando & dentro de $() para que cada vez & seja substituído por 1,2,3,4 e 1 seja adicionado a ela.
echo 1 2 3 4 | tr ' ' '\n' | sed "s/.*/$(echo expr 1 + &)/"
A afirmação acima não funciona
eu recebo a saída:
expr 1 +
expr 1 +
expr 1 +
expr 1 +
Responder1
Se você nãoprecisarpara usar sed
para isso, aqui estão algumas outras opções:
$ echo 1 2 3 4 | tr ' ' '\n' | while read f; do let f+=1; echo $f; done
2
3
4
5
$ echo 1 2 3 4 | tr ' ' '\n' | awk '{print $1+1}'
2
3
4
5
$ echo 1 2 3 4 | tr ' ' '\n' | perl -lne '$i=$_+1; print $i'
2
3
4
5
sed
é um editor de fluxo, não é suposto fazer expressões matemáticas.