Como eu usaria o sed para inserir um caractere em uma determinada posição de caractere em apenas UMA linha?

2

Estou ciente de que isso fará o que eu quero em todas as linhas:

sed 's/^\(.\{4\}\)/-/' textFile

Mas como eu entraria em um - após o 4º caractere no APENAS a 5ª linha? Ou melhor ainda, em um intervalo de linhas, como de 5-7?

    
por John 14.10.2013 / 02:05

1 resposta

2

A primeira parte de um comando sed é uma especificação de intervalo que indica qual (is) linha (s) você deseja afetar. O padrão, se nenhum intervalo for especificado, é todas as linhas. Então:

sed '5,7s/^\(.\{4\}\)/-/' textFile

deve fazer o que quiser.

    
por 14.10.2013 / 02:07

Tags