Inserir linhas de um arquivo num outro

1. Inserir linhas de um arquivo num outro

Fernando
fernandoborges

(usa Ubuntu)

Enviado em 13/06/2008 - 11:24h

Pessoal, preciso inserir o conteúdo (todas as linhas) do "arquivo1" no INÍCIO do "arquivo2".
Para isso fiz:

#cat arquivo1 >> arquivo2

mas as linhas do arquivo1 são adicionadas no FINAL do arquivo2. Como devo fazer para inserir essas linhas do 1 no INÍCIO do 2???


  


2. Re: Inserir linhas de um arquivo num outro

Jorge
thudojorge

(usa Debian)

Enviado em 13/06/2008 - 11:33h

Podes inserir as linhas do arquivo2 no arquivo1

cat arquivo2 >> arquivo1
ou entao

cat arquivo2 arquivo1 >> arquivo3

depois

mv arquivo3 arquivo2 # neste passo o arquivo3 sera renomeado passando a ter o nome arquivo2


3. Re: Inserir linhas de um arquivo num outro

jonathan william hrenechen
hrenechen

(usa CentOS)

Enviado em 21/10/2014 - 10:11h

Pode ser algo assim:

cont=1

while read i
do
linhas[${contador:-0}]=$i
((contador++))
$cont = $cont + 1
done<"arquivo1"

linha=0
for a in {0..$cont}; do

sed i '"$linha"i\${linhas["$linha"]}\n/'arquivo2
$linha = $linha + 1
done


4. Opção mais prática

Marcelo Mota
geminus

(usa Debian)

Enviado em 17/09/2015 - 13:09h

thudojorge escreveu:

Podes inserir as linhas do arquivo2 no arquivo1

cat arquivo2 >> arquivo1
ou entao

cat arquivo2 arquivo1 >> arquivo3

depois

mv arquivo3 arquivo2 # neste passo o arquivo3 sera renomeado passando a ter o nome arquivo2


Essa é a opção mais prática mesmo. Só um detalhe, ele quer as linhas do arquivo 1 no início então o cat deve ser com o arquivo1 primeiro:

$ cat arquivo1 arquivo2 > arquivo3 && mv arquivo3 arquivo2










Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts