Como enviar a saída do script CSH para um editor de texto?

0

Eu encontrei um script CSH muito legal no trabalho que torna uma consulta freqüentemente usada ao Postgres um pouco mais amigável - exceto que ele despeja a saída no shell. Esta é a parte do script que gera a saída:

psql "select datauri from grid where datauri like '%${1}%'" | awk -F '/' '{print $3 "\t" $4 "\t" $7 "\t" $8 "\t" $9 "\t" $10 "\t" $11}'

O nome do script é "DB"

Eu tentei enviar essa saída diretamente para um editor de texto para facilitar o processamento da saída:

$ db get stuff | emacs -nw

Eu só recebo um emacs em branco (vi ou gedit).

Existe alguma maneira de alterar o script, ou qualquer outra coisa, para que a saída seja enviada diretamente para um editor de texto, e não apenas para o shell?

    
por user787832 04.02.2015 / 18:02

3 respostas

2

Usando vim , você pode fazer isso:

$ db get stuff | vim -

O - informa vim para ler sua entrada de texto de stdin.

    
por 04.02.2015 / 18:35
1

Você pode executar o formulário de script com o emacs, de fato, e ele criaria um novo buffer para sua saída. Apenas use M -! (que executa shell-command ), especifique o comando e mude para o buffer *Shell Command Output* .

    
por 04.02.2015 / 18:11
0

Pelo comando 'r' do vim, a saída de um comando pode ser inserida em uma linha específica como :10r !db get stuff . '10r' insere na 11ª linha e '!' obtém a saída do seguinte comando.

    
por 04.02.2015 / 20:00

Tags