Você pode usar o |
command para enviar parte do arquivo por meio de outro programa, mas essa parte é sempre pelo menos duas linhas. Você pode cortá-lo junto com marcas e tail
, embora:
- Com a linha que você quer no topo, pressione m a (ou qualquer outra letra para o segundo).
- Rola uma linha para cima com k ou para cima .
- Pressione | e a letra que você escolheu no lugar de a acima.
- Digite
tail -n 1 | ...
, em que...
é qualquer comando que receberá uma linha como sua entrada padrão.
tail -n 1
nos dará apenas a segunda linha, que é a que mais nos interessa. ...
obtém essa linha para fazer o que quiser.
Se você quiser usar a linha como um argumento para um comando em vez da entrada padrão, você pode usar xargs
ou outro wrapper :
tail -n 1 | xargs ls -l
Se esse comando exibir algo, ele não permanecerá visível na tela, mas você poderá canalizá-lo para less
novamente:
tail -n 1 | xargs ls -l | less
Este será um less
aninhado: você o fecha e volta ao original less
e pode repetir o processo.
Se o comando é interativo de alguma forma, como um editor de texto, e não gosta de ter sua entrada padrão como um pipe ou null, você pode usar um sh
processo no meio para executar o comando e reabrir o tty:
xargs sh -c 'vim "$@" < /dev/tty' sh
O BSD xargs
também tem uma opção -o
para fazer a mesma coisa.