Autor Tópico: Comando cat não concatena arquivos  (Lida 2402 vezes)

Offline LeandroCM

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Comando cat não concatena arquivos
« Online: 29 de Julho de 2016, 00:52 »
Olá pessoal. Esta é minha primeira postagem aqui no grupo.

Eu tenho um macbook air e estou usando o Ubuntu 16.04 no VirtualBox.

Eu tento juntar dois arquivos Aula1.pdf e Aula2.pdf  usando o comando cat da seguinte forma:

$ cat Aula1 Aula2 > Aulas

Mas o novo arquivo  Aulas contém apenas o conteúdo de Aula1 e nada de Aula2.

Abraços
« Última modificação: 04 de Agosto de 2016, 14:59 por LeandroCM »

Offline druidaobelix

  • Usuário Ubuntu
  • *
  • Mensagens: 5.552
    • Ver perfil
Re:Comando cat não concatena arquivos
« Resposta #1 Online: 29 de Julho de 2016, 04:01 »
Eu tento juntar dois arquivos Aula1.pdf e Aula2.pdf  usando o comando cat da seguinte forma:
 $ cat Aula1 Aula2 > Aulas
Mas o novo arquivo  Aulas contém apenas o conteúdo de Aula1 e nada de Aula2.

Onde está o direcionador > (seta para direita) duplique fazendo >> (duas setas para a direita) ou seja, é o símbolo de direcionamento duas vezes.

Usando o direcionador > uma vez ele substitui

Usado duplicado >> ele adiciona

Então, se quero que os conteúdos dos arquivos Aula1 e Aula2 sejam adicionados ao arquivo Aula devo fazer:

 $ cat Aula1 Aula2 >> Aulas

Existe um mais que vasto material na internet abordando e esmiuçando o comando cat

Peguei um ao acaso, apenas ao acaso:

Uso do comando cat no Linux e suas facilidades

http://www.appunix.com.br/howto/linux/uso-do-comando-cat-no-linux-e-suas-facilidades/

Ainda esse tópico pode ser útil:

http://ubuntuforum-br.org/index.php/topic,168.msg661276.html#msg661276

Ainda recentemente fiz nele uma indicação de links que podem ser bastante úteis, veja os posts #453 e #455 que estão na página 31





« Última modificação: 29 de Julho de 2016, 04:08 por druidaobelix »
www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

Offline LeandroCM

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re:Comando cat não concatena arquivos
« Resposta #2 Online: 29 de Julho de 2016, 12:34 »
Oi.  O que entendi dos artigos que havia lido e do livro
Shell Linux do Aprendiz ao Administrador que estou estudando, é que, caso o arquivo Aulas.pdf
não exista, ele deveria  ser  criado ao usar o comando

$cat Aula1.pdf Aula2.pdf > Aulas.pdf  

Acho que o problema está no tipo de arquivo, no caso pdf. (Desculpe, por omitir as extensões no post anterior)

Eu fiz um teste. Criei arquivos Teste1 e Teste2  usando o nano .

Neste caso o comando

$cat Teste1 Teste2 > Teste  

cria um novo arquivo chamado Teste e nele estão os conteúdos dos dois outros arquivos como o esperado.

Voltando aos arquivos originais eu tentei as seguintes soluções:

1) Salvei os arquivos Aula1.pdf e Aula2.pdf  sem a extensão .pdf e  usei o comando cat como descrito acima
e o problema continuou.

2) Como estou num mac usando Ubuntu no VirtualBox, achei que o problema estaria no VirtualBox, por isso repeti todos comandos
diretamente no bash do mac.  Os resultados foram os mesmos que os obtidos no Ubuntu, ou seja, o problema se manteve nos arquivos pdf e
obtive o resultado esperado para arquivos criados no nano.

O problema está no mac ou nos arquivos em pdf? Se o problema for do mac, o problema deveria persistir no Ubuntu via VirtualBox?
 

Offline druidaobelix

  • Usuário Ubuntu
  • *
  • Mensagens: 5.552
    • Ver perfil
Re:Comando cat não concatena arquivos
« Resposta #3 Online: 29 de Julho de 2016, 13:07 »
Pois então, LeandroCM,

Nesse aspecto não há diferença alguma no fato de você estar utilizando o Ubuntu em máquina virtual (VM) e essa VM estar hospedada num Mac, isso não altera nada.

O comando cat serve para arquivos de texto puro, tipo ASCII, assim sendo, arquivos que tenha formatação não vai dar certo e nem preciso falar dos binários, o que seria um absurdo juntar os tais.

Para juntar dois ou mais arquivos .pdf existem vários programas gráficos que fazem isso com facilidade, dos quais se poderia mencionar o "PDF Chain" e ainda o pdfsam, dentre outros.

Entretanto, querendo fazer por linha de comando, pode utilizar o programa pdftk:

Código: [Selecionar]
pdftk file1.pdf file2.pdf file3.pdf output saida.pdf
exemplo:

Código: [Selecionar]
pdftk aula01.pdf aula02.pdf aula03.pdf output todasaulas.pdf
então, de forma mais genérica, a sintaxe é:

Código: [Selecionar]
pdftk {nomes dos arquivos .pdf que se quer juntar} output {nome do arquivo de saída)
O "nome_do_arquivo_de_saída" você escolhe como queira.

O programa 'pdftk' não está instalado por padrão, você pode instalá-lo fazendo no terminal:

Código: [Selecionar]
sudo apt install pdftk
www.arredondar.org.br
Vencedor Desafio de Impacto Social Google 2016!
Você também pode participar e fazer a diferença.

Offline LeandroCM

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re:Comando cat não concatena arquivos
« Resposta #4 Online: 29 de Julho de 2016, 20:27 »
Valeu mesmo druidaobelix!  :D

Offline LeandroCM

  • Usuário Ubuntu
  • *
  • Mensagens: 4
    • Ver perfil
Re:Comando cat não concatena arquivos
« Resposta #5 Online: 29 de Julho de 2016, 20:40 »
 :D