O comando a seguir adicionará padrão à quarta linha.
sed -i '4i pattern' file
Mas não está funcionando se eu tiver menos de quatro linhas no arquivo. O requisito é que eu preciso adicionar o padrão na 4ª linha com linhas de prefixo vazias.
Resultado esperado:cat -n file
1 line1
2
3
4 pattern
GNU sed versão 4.2.1
Você pode preencher o arquivo com algumas linhas em branco para garantir que haja pelo menos 4 linhas:
Se você quiser aparar posteriormente as linhas em branco à direita, poderá canalizá-las para:
ou
Ou adicionando apenas o número mínimo de linhas em branco:
Observe que o programa sed mudou para anexar após a linha 3 em vez de inserir antes da linha 4.
Verifique se
file
tem linhas suficientes comwc -l
(linhas contando).Exibe um aviso se o arquivo não tiver linhas suficientes.