Veja o conteúdo do log tar sem extraí-los

5

tar -tvf file.tar contém arquivos de log. Existe alguma maneira de fazer algo assim

tar -tvf file.tar | head -1 | awk '{print $NF}' | xargs less {}

Isso daria arquivo não encontrado, mas existe uma maneira?

    
por Kevin 02.02.2012 / 23:18

3 respostas

7

Se você não usar a opção v com tar , apenas obterá uma lista de nomes de arquivos, não uma listagem ls -l .
Eu estou supondo que você só quer olhar para o primeiro arquivo do head -1
então

tar xfO file.tar 'tar tf file.tar | head -1' |less

Trabalhará para ver o primeiro arquivo

Esse último switch é um maiúsculo 'O' Oh não 0% -O, --to-stdout extrai arquivos para a saída padrão

Se você quiser visualizá-los todos de uma vez

tar xfO file.tar | less

Mas você perderá o nome exato do arquivo de log que está visualizando

    
por 03.02.2012 / 00:25
3

Você pode abrir um tar no vim, pesquisar sua estrutura de arquivos e ler os arquivos. (Eu tenho certeza que o emacs também pode fazer isso).

    
por 03.02.2012 / 00:06
2

O AVFS é um sistema de arquivos virtual (baseado no FUSE ) que permite ver dentro de arquivos como se fossem diretórios.

Execute mountavfs de uma vez por todas (ele persistirá até a próxima reinicialização; você deverá colocá-lo em ~/.profile ). Isso cria uma visão de todo o sistema de arquivos com raiz em ~/.avfs . Dentro dessa visão, cada arquivo tem um diretório associado cujo nome tem um # extra no final. Este diretório contém o conteúdo do arquivo.

mountavfs
less ~/.avfs$PWD/file.tar\#/filename.log
    
por 03.02.2012 / 00:42

Tags