Copie as partes específicas de um arquivo para outro arquivo

0

Como posso copiar partes específicas de um arquivo para outro arquivo? No primeiro arquivo, eu tenho:

user01: Id name nationality
user02: Id name nationality
.
.
.

Eu quero copiar cada informação para um arquivo específico (um arquivo para o ID e outro para o nome e outro para a nacionalidade).

    
por Aomine Daiki 25.03.2015 / 11:31

4 respostas

0

Você pode fazer como:

sed 'h;s/\(: *[^ ]*\)\(.*\)//pw id
     g;s//:/;h;s///pw name
     g;s//:/w nationality' <infile

... que gravará todas as saídas para stdout, mas apenas as coisas relevantes para cada arquivo. Executando isso nos seus dados de exemplo e eu recebo:

user01: Id
user01: name
user01: nationality
user02: Id
user02: name
user02: nationality

... impresso na stdout e ...

head id name nationality

==> id <==
user01: Id
user02: Id
==> name <==
user01: name
user02: name
==> nationality <==
user01: nationality
user02: nationality
    
por 25.03.2015 / 18:23
2

cp é normalmente usado para copiar.

cp file1.txt file2.txt

Para anexar a um arquivo existente, use

cat file1.txt >> file2.txt
    
por 25.03.2015 / 11:36
2

O comando para isso é cp :

cp file1.txt file2.txt

Se você deseja acrescentar outro arquivo existente, use:

cat file1.txt >> file2.txt
    
por 25.03.2015 / 11:37
-1

Você pode usar o comando cut. Por exemplo, para extrair a primeira coluna e salvar em um arquivo, você pode digitar:

cut -f1 -d" " sample > file1.txt

o parâmetro -f1 especifica qual coluna você deseja usar, neste caso o primeiro.

o -d" " é o separador

    
por 25.03.2015 / 13:45