Comandos simples no Bash

Curso de Bash

Seção do curso de Bash sobre comandos simples, opções e argumentos.

Comandos simples são os comandos mais comuns na interação com Bash.

Conteúdo

  1. O que é um comando simples?
  2. O que é nova linha?
  3. O que é opção?
  4. O que são argumentos?
  5. -- Fim das opções
  6. Quais opções e argumentos possíveis para um comando?
  7. Exercícios

O que é um comando simples?

Comandos simples em Bash são sequências de palavras separadas por espaço (ou outro IFS) e terminadas por nova linha (ou outro operador de controle).

A primeira palavra do comando é o nome do comando, seguido de suas opções e por fim seus argumentos.

ls -l /home

O comando acima é composto por:

  1. ls, que é o nome do comando.
  2. -l, opção do comando.
  3. /home, argumento do comando.

O que é nova linha?

Quando a tecla Enter/ é pressionada, estamos inserindo no terminal um caractere chamado nova linha.

nova linha é um caractere de controle que, como o seu nome explicita, inicia uma nova linha.

Caracteres de controle são caracteres que não representam símbolos ou letras, ou seja, não são visualizáveis.

No Bash, o caractere nova linha submete as palavras até então digitadas à execução.

O que é opção?

Opções são palavras, precedidas de um ou dois hífens, que modificam o comportamento de um comando.

P. ex., o comando ls executado sem opções exibiria uma saída como abaixo, com os arquivos e diretórios dispostos em colunas.

ls
Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos

Já com a opção -l, o comportamento de ls é modificado: passa a exibir os arquivos e diretórios em lista.

ls -l
total 32
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Desktop
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Documents
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Downloads
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Music
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Pictures
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Public
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Templates
drwxr-xr-x 2 1001 1001 4096 May 22 05:37 Videos

Um comando pode ter nenhuma, uma ou diversas opções.

ls -l --reverse -t

Salvo raras exceções, a ordem em que as opções são digitadas não influencia o comportamento do comando.

O comando abaixo terá execução idêntica ao anterior.

ls --reverse -t -l

As opções válidas para um comando são listadas em seu manual. Veremos como acessar o manual na próximas seções.

Opções curtas

Opções precedidas por um hífen são chamadas opções curtas, e geralmente são representadas por apenas uma letra.

Elas podem ser digitadas juntas, com apenas um hífen as precedendo. Estilo que aprimora a legibilidade de um comando.

Opções -t, -l e -h do comando ls agrupadas abaixo.

ls -thl

Opções longas

São precedidas por dois hífens e representadas por uma palavra.

Diferentemente das opções curtas, opções longas não permitem agrupamento.

--human-readable, uma das opções longas do comando ls, abaixo.

ls --human-readable

O que são argumentos?

São palavras escolhidas pelo usuário que informam ao comando qual é o alvo de sua funcionalidade.

No exemplo abaixo, o comando mv recebe como primeiro argumento o arquivo a ser movido minha_musica.mp3, e como segundo o diretório destino /home/usuario/Musicas.

mv minha_musica.mp3 /home/usuario/Musicas

Um comando pode aceitar nenhum, um ou mais argumentos.

Como ocorre com ls, que lista os arquivos e diretórios do diretório /home enviado como argumento.

ls /home

Quando nenhum argumento é informado, ls então lista os arquivos e diretórios do diretório atual.

ls

Argumentos de opções

Opções de comandos também podem requerer argumentos.

Argumentos de opção são digitados logo após a opção. espaço separando a opção e seu argumento é opcional (como na opção -f abaixo).

Abaixo o comando cut recebe o argumento /etc/os-release, enquanto suas opções -d e -f os argumentos '=' e 1.

cut -d '=' -f1 /etc/os-release

-- Fim das opções

Após -- (fim das opções) apenas argumentos são processados pelo comando.

É mais utilizado nos casos incomuns em que, similarmente às opções, argumentos iniciam com - ou --.

Caso quiséssemos excluir um arquivo -arquivo, o comando abaixo não funcionaria pois rm interpretaria -arquivo como uma opção não reconhecida.

caio@FX505DV:~$ rm -arquivo
rm: invalid option -- 'a'
Try 'rm --help' for more information.

Com o uso de --, a exclusão se torna possível, já que o comando identificaria as palavras antes de -- como opções e após como argumentos.

rm -v -- -arquivo

Mesmo sem a opção, -- ainda é necessário para delimitar o argumento.

rm -- -arquivo

Quais opções e argumentos possíveis para um comando?

No próximo capítulo Ajuda e manuais de comando abordaremos a opção --help e o comando man. Ambos listam as opções e argumentos válidos de um dado comando.

Exercícios

Selecione a(s) afirmação(ões) correta(s):

O comando ls -halt
O comando mv --verbose meu_arquivo /home/usuario/
O comando rm -v -- -v
Escrito por Caio Santesso.

Comentários

  • Conteúdo dos posts, exceto onde indicado contrário, licenciado sob a licença CC BY-SA 4.0 .