como escrever várias linhas em um arquivo usando o shell script?

1

Eu preciso ler os dados de uma fonte e ter que formar um arquivo XML usando o shell script. Mas antes de tudo eu não sei escrever várias linhas em um arquivo usando o shell script

    
por newbie dev 19.12.2011 / 15:04

2 respostas

5

Use o redirecionamento de saída

echo '<fruit>'    > foo.xml   # overwrites
echo ' <apple />' >> foo.xml  # appends
echo '</fruit>    >> foo.xml  # appends

Ou use um "documento aqui"

cat <<EndXML > foo.xml
<fruit>
 <apple />
</fruit>
EndXML

Melhor ainda é usar uma linguagem de script / programação que tenha suporte para XML. Eu gosto de Perl e XML :: LibXML, mas você pode preferir outra coisa.

    
por 19.12.2011 / 15:18
2

O seguinte cria um arquivo chamado "file.txt" (ou substitui o conteúdo do arquivo, se já existir), e grava "foo" (sem aspas) nele:

echo "foo" > file.txt

O que você parece procurar é o seguinte, acrescentando a string "foo" (novamente, sem aspas) no arquivo (e novamente, criando o arquivo se ele não existir)

echo "foo" >> file.txt

Assim, o código a seguir irá escrever três linhas para "file.txt":

echo "foo" >> file.txt ; echo "bar" >> file.txt; echo "beer" >> file.txt
    
por 19.12.2011 / 15:17

Tags