Script para manipular arquivo
Amigos estou tentando fazer um script para o meu servidor mas estou apanhando um tanto no básico. Eu criei um pequeno menu que perguntará para a pessoa o que ela deseja fazer.
Neste menu a pessoa pode escolher apagar uma linha ou inserir uma linha. Então quero saber como eu posso apagar uma determinada linha em um arquivo. Eu sei o número exato da mesma.
Outra dúvida, este arquivo conterá os dados separados pelo ENTER ou se a cada linha eu tenho uma informação então gostaria de saber se tem como eu mandar ordenar este arquivo por ordem crescente ou decrescente.
Desde já agradeço a ajuda
Re: Script para manipular arquivo
Amigos achei um comando que pode me ajudar mas não sei como colocar no meu script.
O comando é o sed.
Se eu executar o seguinte comando funciona cat /etc/firewall/macaddress | sed '4q;d' ele apaga a linha 4.
Agora no meu script eu fiz o seguinte:
read LINHA
cat /etc/firewall/macaddress | sed '$LINHAq;d'
Porém da erro pois ele entende que isso tudo é a variavel ou sei lá o q. O importante é que não funciona. Alguém sabe como posso arrumar isso? Obrigado desde já.
Re: Script para manipular arquivo
Exatamente, tu resolve isso pelo sed.
Já que você sabe o número da linha que vai ser apagada, você pode usar assim:
Código :
# sed '6d' arquivo > arquivo.tmp && mv arquivo.tmp arquivo
Tente usar aspas duplas ao invés das simples. Um documento que te ajudará está localizado em http://www.aurelio.net/sed.
Abraços!
Re: Script para manipular arquivo
Eu não sei a linha, por isso eu criei uma variavel para que o usuário informe. Este está sendo o me problema.
Att, Igor Bastos
Re: Script para manipular arquivo
Tá, mas tu tentou usar aspas duplas?