Como redirecionar a saída de um programa para um arquivo ZIP? [fechadas]

2

Estou executando um script que está coletando um log de um servidor. Eu preciso redirecionar esses logs para um arquivo ZIP. No momento, estou coletando dados em um arquivo de texto.

Como posso redirecioná-lo diretamente para o ZIP?

    
por Girija Joshi 22.09.2015 / 09:15

2 respostas

8

Usando UnZip 6.00 of 20 April 2009 , consegui fazer isso:

$ date | zip jeff.zip -
$ unzip -l jeff.zip
Archive:  jeff.zip
  Length      Date    Time    Name
---------  ---------- -----   ----
       29  01-21-2016 13:02   -
---------                     -------
       29                     1 file
$ unzip -p jeff.zip | cat
Thu Jan 21 13:02:31 EST 2016
$ unzip -p jeff.zip > newfilename.here

Isso usa date como um substituto para o seu script que coleta o arquivo de log, para stdout presumivelmente; ele envia esse stdout para zip, dizendo para ele receber sua entrada de stdin em vez de um nome de arquivo (com - ). O conteúdo do arquivo zip não é nomeado como algo reconhecível, mas os dados estão lá.

    
por 21.01.2016 / 19:05
1

Você pode encaminhar direto para gzip e redirecionar os dados compactados para um arquivo:

echo "my not compacted data" | gzip > compact.gz
    
por 21.01.2016 / 18:31

Tags