Linha de comando

Ferramentas de linha de comando

  • Em inglês: command line tools

As ferramentas de linha de comando são programas que podem ser usados por meio de uma interface de linha de comando (CLI), e não por uma interface gráfica de usuário (GUI). Essas ferramentas permitem realizar tarefas digitando comandos de texto em um terminal ou janela de console. As ferramentas de linha de comando estão presentes em vários sistemas operacionais, incluindo Linux, macOS e Windows, e são essenciais para administração de sistemas, desenvolvimento de software e processamento de dados.

Essas ferramentas oferecem funcionalidades poderosas, que muitas vezes podem ser combinadas ou usadas em scripts para automatizar fluxos de trabalho complexos. Alguns exemplos de ferramentas de linha de comando são programas de manipulação de arquivos como cp e mv, editores de texto como vim e nano e ferramentas de rede como ping e ssh. Elas são valorizadas pela velocidade, pela flexibilidade e pelo controle que dão ao usuário para gerenciar o sistema e lidar com arquivos.

Dicas e truques

Parar um comando

  • Pressione Ctrl + C: interrompe o comando em execução e volta para o prompt.

Isso é superútil se você iniciar sem querer um comando que demora demais ou se comporta de um jeito inesperado. Também funciona se um comando está esperando uma entrada e você quer cancelar. E, por fim, pode ser um jeito rápido de recomeçar se você errou ao digitar um comando.

Autocompletar

  • Pressione Tab: completa quando há só uma correspondência.
  • Pressione Tab duas vezes: mostra as opções quando há várias correspondências.

Isso funciona para comandos, arquivos, pastas e muitas opções. Por exemplo:

  • gigit
  • cd Doccd Documents/
  • git chgit checkout/git cherry-pick

Histórico de comandos

  • Pressione Up / Down: navega pelos comandos que você já executou.
  • Pressione Ctrl + R: busca reversa no histórico de comandos (digite para filtrar, Enter para executar).
  • history: mostra a lista do histórico.
  • !!: executa de novo o último comando.

Argumentos, aspas e caracteres especiais

Ao passar argumentos para comandos, preste atenção em espaços e caracteres especiais. Ao lidar com caminhos ou nomes de arquivo que contêm espaços, coloque os caminhos entre aspas (" ou ') para garantir que sejam tratados como um único argumento. Outra opção é escapar o espaço com uma barra invertida (\). Por exemplo:

  • Errado: rm My Project (será interpretado como a remoção de dois caminhos diferentes: My e Project)
  • Certo:
    • rm "My Project"
    • git add 'My Project'
    • git add My\ Project

Se você não fechar as aspas direito, o terminal vai achar que você ainda está digitando o argumento e esperar você terminar (exibindo dquote> em uma nova linha). Feche as aspas na nova linha ou cancele pressionando Ctrl + C.

Argumentos multilinha

Pressionar Enter no terminal normalmente executa na hora o comando que você digitou.

No entanto, às vezes você quer dividir um comando ou argumento longo em várias linhas para facilitar a leitura. Nesse caso, você pode digitar uma barra invertida (\) no final da linha para indicar que o comando continua na linha seguinte. Por exemplo:

Executar no terminal:
git rebase -i HEAD~5 \
--autosquash \
--keep-empty

Mas tem uma pegadinha aqui: usar barras invertidas desse jeito só afeta como o comando é exibido no terminal; não insere quebras de linha de verdade no argumento em si. Por exemplo:

Executar no terminal:
echo "First line\
Second line"

O resultado é:

Resultado:
First lineSecond line

Para colocar quebras de linha de verdade na string, você precisa incluir o caractere de nova linha (representado por \n) dentro das aspas, assim:

Executar no terminal:
echo "First line\nSecond line"

Ou, se quiser formatar em várias linhas:

Executar no terminal:
echo "First line\n\
Second line"

Isso vai produzir:

Resultado:
First line
Second line