Você pode usar sed
para escrever em uma linha específica.
tente isto:
sed -i '33ianything' textpath
ou
sed -i '33i\anything' textpath
Ele irá inserir "qualquer coisa" na linha número 33.
Em um script bash eu quero escrever algumas linhas em um arquivo de texto, mas este arquivo já foi usado antes e há textos nele. Então, quero fazer eco de um texto adicional, a partir de um certo número de linha no arquivo.
Eu quero algo assim:
echo -fromLineNumber 33 -e "anything" >> textPath
Para manter as primeiras 32 linhas e adicionar novo texto depois:
head -n 32 oldfile > newfile
echo anything >> newfile
echo goes >> newfile
echo here >> newfile
Para inserir algum texto após a linha 32 de um arquivo:
sed -e '32s/$/\nanything\ngoes\nhere/' oldfile > newfile
Tags bash bash-script