2012-06-10 07:22:07 +0000 2012-06-10 07:22:07 +0000
224
224
Advertisement

Qual é o equivalente em Windows do comando Unix cat?

Advertisement

Eu quero fazer exactamente o que o unix “cat” faz, mas no meu PC. Existe um simples comando equivalente para a linha de comandos do Windows?

Especificamente quero criar um ficheiro a partir de todos os ficheiros de um determinado tipo numa pasta

Em Unix:

cat *fna >all_fna_files.fna

(que junta todos os ficheiros de texto “.fna” num único grande ficheiro de texto)

Advertisement
Advertisement

Respostas (3)

280
280
280
2012-06-10 07:47:35 +0000

type

Funciona em command.com, cmd, e PowerShell (embora neste último seja um pseudónimo de Get-Content, o mesmo acontece com cat, pelo que poderia usar qualquer um dos dois). Do artigo Wikipedia (destaque meu):

Em computação, o tipo é um comando em vários VMS. AmigaDOS, CP/M, DOS, OS/2 e Microsoft Windows interpretadores de linha de comando (shells) como COMMAND.COM, cmd.exe, 4DOS/4NT e Windows PowerShell. É utilizado para mostrar o conteúdo de ficheiros especificados. ** É análogo ao comando Unix cat.**

C:\>echo hi > a.txt
C:\>echo bye > b.txt
C:\>type a.txt b.txt > c.txt
C:\>type c.txt
hi
bye
22
22
22
2012-06-10 07:33:20 +0000

A partir do comando shell:

copy a.txt + b.txt + c.txt output.txt

(Mas isso segue o comando shells utilização do controlo-Z como um marcador de fim de ficheiro, pelo que não é adequado em alguns casos).

Em PowerShell:

get-content a.txt,b.txt,c.txt | out-file output.txt

e pode controlar (utilizando o parâmetro -Encoding) a codificação de ficheiros (que permite a transcodificação utilizando diferentes codificações para a leitura e escrita).

1
Advertisement
1
1
2015-03-20 13:41:46 +0000
Advertisement

Acabei de utilizar o comando cat no DOS (Windows 7 Pro) da seguinte forma e fundi com sucesso 3 ficheiros (log1.txt, log2.txt, log3.txt) num único ficheiro:

cat log*.txt >> myBigLogFile.txt

Nota: cat log*.txt > myBigLogFile2.txt também fornece o mesmo resultado, mas irá sobrepor-se ao ficheiro anterior.

Advertisement

Questões relacionadas

3
10
19
10
3
Advertisement
Advertisement