Grave comandos estruturados em várias linhas com a tecla tab ativada

10

Eu gostaria de escrever um comando estruturado em várias linhas, como

$ for i in *;
→ do
→    file $i;
→ done
bmdt.md: ASCII text
breakfast.md: ASCII text
brmdh.md: ASCII text
test.sh: Bourne-Again shell script text executable, ASCII text

mas ache que a guia não está funcionando,

Como eu poderia ativar a tecla tab no console do bash?

    
por avirate 28.10.2018 / 10:47

1 resposta

10

Quando você pressionar Enter depois de inserir um comando incompleto, o shell bash mostrará um prompt de continuação (o prompt secundário, $PS2 ) e permitirá que você complete o comando inserido. Os recursos de edição de linha de comando do shell naquele ponto são os mesmos que no prompt original (o prompt principal, $PS1 ), o que significa que a tecla Tab executaria o comando e o nome do arquivo como de costume .

Para inserir um caractere de tabulação, use a tecla Ctrl + V Tab ou use espaços para indentação. Caracteres de tabulação (ou qualquer outro caractere literal) sempre podem ser inseridos se prefixados por Ctrl + V .

Como alternativa, se no modo de edição da linha de comando do Emacs (que eu acredito ser o padrão em bash ), use Ctrl + X Ctrl + E para exibir editor para inserir seu comando em. O editor usado será aquele especificado pela variável EDITOR shell / environment, ou emacs se esta variável não estiver definida.

No modo de edição da linha de comando Vi, pressione Escape v para fazer a mesma coisa.

O comando será executado depois de salvar e sair do editor.

    
por 28.10.2018 / 11:02

Tags