Como copiar a saída anterior do terminal bash para o arquivo

4

Eu sei como redirecionar a saída de um terminal para um arquivo. Por exemplo, se eu quiser listar todos os arquivos em ~ / Documents e exportar para um arquivo chamado test.txt, eu faria isso:

ls ~/Documents > test.txt

A questão é, posso copiar a saída para test.txt APÓS ter executado o comando? Isso significaria que eu não teria que saber antecipadamente se gostaria de copiar a saída para o arquivo. Eu quero fazer algo assim:

ls ~/Documents

Então isso:

<bash command for copying standard output to test.txt>

Qualquer ajuda será bem-vinda, obrigado.

    
por Eddy 26.10.2010 / 13:40

2 respostas

0

Você pode usar tee , mas não é estritamente depois que você executou o comando anterior.

ls ~/Documents | tee test.txt

Escreve a saída para sua sessão de linha de comando normalmente e também a grava em test.txt.

Como alternativa, se você estiver executando dentro do GNU screen , existem comandos para se movimentar no buffer de rolagem e copiar / colar. Mais informações em esta pergunta de superusuário .

    
por 26.10.2010 / 15:22
1

você pode iniciar sua sessão de shell em uma janela do Emacs e simplesmente copiar e colar

(você também pode emitir um comando a partir do vi e montar a saída no buffer vi atual),

ou você pode copiar e colar a partir da sua janela xterm,

ou você pode executar sua sessão de shell usando o script (1) e depois editar a saída da sessão,

ou você pode simplesmente refazer seu comando.

Espero que isso ajude, Klaus

    
por 26.10.2010 / 13:58