[Resolvido] Como eliminar a ultima linha de um ficheiro

Iniciado por Cláudio Novais, 06 de Fevereiro de 2008, 15:18

tópico anterior - próximo tópico

Cláudio Novais

Gostaria de saber como conseguirei, via terminal tirar uma linha de um ficheiro. ou seja, fazer o contrário deste comando:
echo "linha de texto" >> ficheiro.txt

Obrigado

clcampos

Se esta linha for única basta:

cat ficheiro.txt | grep -v "linha de texto" > /tmp/ficheiro.txt
mv /tmp/ficheiro.txt    .
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

Cláudio Novais

Pois, entretanto, eu tinha pensado nessa solução. mas já não é a primeira vez que tenho esta dúvida, tive á procura no grep para ver se dava para retirar uma determinada linha, dando o numero desta, mas também não consegui solucionar o problema dessa maneira.

no entanto, MUITO OBRIGADO clcampos, tanto pela ajuda eficaz tanto pela velocidade de resposta!  :)


para já está resolvido, mas vou tentar fazer para um caso em que tenha mais que uma linha igual.

clcampos

Se tiver ajudado fico feliz unrater, ainda mais porque eu adoro mexer em shell script, então estou sempre ligado em tópicos que tratam do tema.

Já usei esta solução muitas vezes, inclusive em uma rotina para incluir/excluir usuários do arquivo /etc/passwd.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

Cláudio Novais

Na realidade eu estava a precisar para fazer um tutorial que tem de adicionar um servidor nas source.list, e depois queria retirar, portanto, a solução que deu é suficiente.