-
iselect
fornece uma lista suspensa (como entrada de um canal anterior), em qual o usuário pode marcar várias entradas, (como saída para o próximo canal):# show some available executables ending in '*sh*' to run through 'whatis' find /bin /sbin /usr/bin -maxdepth 1 -type f -executable -name '*sh' | iselect -t "select some executables to run 'whatis' on..." -a -m | xargs -d '\n' -r whatis
Saída depois de pressionar a barra de espaço para marcar alguns no meu sistema:
dash (1) - command interpreter (shell) ssh (1) - OpenSSH SSH client (remote login program) mosh (1) - mobile shell with roaming and intelligent local echo yash (1) - a POSIX-compliant command line shell
-
vipe
permite a edição interativa (com o editor de texto favorito) do que passa por um canal. Exemplo:# take a list of executables with long names from '/bin', edit that # list as needed with 'mcedit', and run 'wc' on the output. find /bin -type f | grep '...............' | EDITOR=mcedit vipe | xargs wc
Saída (após a exclusão de algumas linhas em
mcedit
):378 2505 67608 /bin/ntfs-3g.secaudit 334 2250 105136 /bin/lowntfs-3g 67 952 27152 /bin/nc.traditional 126 877 47544 /bin/systemd-machine-id-setup 905 6584 247440 total
Nota sobre push & puxar:
-
iselect
começa com uma lista na qual nada é selecionado. -
vipe
começa com uma lista na qual todos os itens mostrados serão enviados pelo canal, a menos que o usuário os exclua.
Em distros baseadas em Debian , ambos os utilitários podem ser instalados com apt-get install moreutils iselect
.