Introdução aos Comandos - Linux

A linha de comando, ou terminal, é um componente essencial do sistema operacional Linux, permitindo uma administração e gerenciamento abrangentes de toda a operação do sistema. Mesmo em distribuições do Linux que utilizam uma interface gráfica, o terminal ainda é necessário para revelar todo o poder e potencial do Linux.

Para trabalhar com a linha de comando, o Linux fornece o que é chamado de shell. O shell é um interpretador de comandos: ele é responsável por executar o que você digita na linha de comando. O shell mais popular é o bash (abreviação de "Bourne Again Shell", onde "Bourne Shell" é o nome do primeiro shell no Unix). Outros shells também podem ser usados, oferecendo recursos adicionais, mas em geral funcionam de maneira semelhante. Por exemplo, o shell tcsh oferece uma linguagem de script semelhante à linguagem de programação C. Outro shell bastante comum é o zsh.

Para interagir com o sistema operacional através da linha de comando, usamos comandos. No Linux, existem muitos comandos, e novos comandos são adicionados regularmente. No entanto, todos esses comandos seguem um padrão de funcionamento comum. Assim, todos os comandos consistem em três partes: o próprio comando, seus parâmetros e argumentos. Por exemplo, vejamos um dos comandos mais comuns, ls, que exibe a lista de arquivos e diretórios em uma pasta específica. Ao simplesmente digitar ls, obtemos uma lista de arquivos e diretórios da pasta atual:

programicio@Programicio:~$ ls
  Android            extensions        Public 
  Desktop            gnome             snap            
  Documents          Music             Templates
  Downloads          Pictures          Videos

Além disso, s comandos geralmente aceitam um conjunto de parâmetros opcionais. Cada comando pode ter vários parâmetros diferentes, e dependendo do comando, vários deles podem ser aplicados simultaneamente. Por exemplo, o comando ls pode aceitar o parâmetro -l, que exibe informações mais detalhadas sobre os arquivos e diretórios, como permissões de acesso, data de criação, etc. Vamos aplicar essa opção:

programicio@Programicio:~$ ls -l
total 72
drwxrwxr-x  3 programicio programicio  4096 Feb 19 10:24  Android
drwxr-xr-x  2 programicio programicio  4096 Jan 28 14:39  Desktop
drwxr-xr-x 15 programicio programicio  4096 Mar  7 20:49  Documents
...
drwxr-xr-x  2 programicio programicio  4096 Jan 28 14:39  Videos

Além dos parâmetros, os comandos podem aceitar argumentos. Argumentos geralmente representam os objetos aos quais o comando é aplicado. O argumento é especificado no final do comando. Por exemplo, o comando ls recebe como argumento o caminho do diretório cujo conteúdo deve ser exibido. Nos exemplos acima, o caminho do diretório não foi fornecido, então, por padrão, o comando ls foi aplicado ao diretório atual. Agora, vamos fornecer o caminho do diretório /usr:

programicio@Programicio:~$ ls /usr
bin  games  include  lib  lib32  lib64  libexec  local  sbin  share  src
programicio@Programicio:~$ 

Se o comando também aceitar parâmetros, o argumento é especificado após os parâmetros opcionais:

programicio@Programicio:~$ ls -l /usr
total 148
drwxr-xr-x   2 root root 61440 Mar  4 19:40 bin
drwxr-xr-x   2 root root  4096 Oct 16 13:38 games
drwxr-xr-x  83 root root 16384 Feb 23 06:47 include
...
drwxr-xr-x   6 root root  4096 Mar  8 07:08 src

Cadeias de Comandos

Usando o símbolo | (barra vertical), é possível criar cadeias de comandos. Por exemplo, vejamos a seguinte cadeia de comandos:

ls -R / | less

Aqui, o comando ls -R é executado (listando todos os arquivos e diretórios do sistema), e seu resultado é enviado para o comando less. O comando less divide a saída recebida em páginas, exibindo o resultado do primeiro comando página por página.

Redirecionamento

Outro operador frequentemente usado no terminal é o operador de redirecionamento >. Por padrão, o resultado da execução de um comando é exibido no console. No entanto, utilizando o redirecionamento, você pode enviar o resultado para qualquer outro lugar, como um arquivo. Por exemplo, para enviar o resultado do comando ls -l para um arquivo folder.txt:

ls -l > folder.txt

Como resultado, um arquivo folder.txt será criado na pasta atual, caso não exista. Se esse arquivo já existir, ele será sobrescrito.

Se o arquivo já existir e você não quiser sobrescrever, mas adicionar o resultado do comando ao conteúdo existente, use o operador >>:

ls -l >> folder.txt

Durante a execução dos comandos, podem ocorrer erros. Para redirecionar os erros, usamos o operador 2>, por exemplo:

ls -l 2> errors.txt

No entanto, ao executar um comando, pode ser que não saibamos se ocorrerão erros ou não. Nesse caso, podemos separar a saída padrão dos erros, por exemplo:

ls -l > folder.txt 2> errors.txt

Neste caso, a saída do comando é gravada no arquivo folder.txt. Se houver erros, eles são registrados no arquivo errors.txt.

Obtendo Ajuda

Comando man

Para obter informações sobre comandos, o Linux fornece o comando man (abreviação de "manual"). Este comando recebe o nome do comando sobre o qual você deseja obter informações:

man nome_do_comando

Por exemplo, para obter informações sobre o comando ls:

man ls

O console exibirá algo parecido com isto:

LS(1)                            User Commands                           LS(1)

NAME
        ls - list directory contents

SYNOPSIS
        ls [OPTION]... [FILE]...

DESCRIPTION
        List  information  about  the FILEs (the current directory by default).
        Sort entries alphabetically if none of -cftuvSUX nor --sort  is  speci‐
        fied.

        Mandatory  arguments  to  long  options are mandatory for short options
        too.

        -a, --all
              do not ignore entries starting with .
  • Name: Nome do comando e uma breve descrição de sua finalidade.

  • Synopsis: Informações breves sobre o uso do comando, incluindo todos os parâmetros disponíveis e indicando se um parâmetro é opcional (mostrado entre colchetes) ou obrigatório (não mostrado entre colchetes).

  • Description: Descrição detalhada do comando.

  • Options: Lista completa de todos os parâmetros disponíveis.

  • Files: Lista breve de arquivos associados ao comando (se houver).

  • See also: Lista de comandos relacionados.

  • Author: Autor do comando e seu endereço de e-mail.

Opção --help

Outra maneira de obter informações sobre um comando é usar a opção --help, disponível para praticamente todos os comandos. Por exemplo, para obter ajuda sobre o comando ls:

programicio@Programicio:~/Documents$ ls --help
Usage: ls [OPTION]... [FILE]...
List information about the FILEs (the current directory by default).
Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.

Mandatory arguments to long options are mandatory for short options too.
  -a, --all                  do not ignore entries starting with .
  -A, --almost-all           do not list implied . and ..
      --author               with -l, print the author of each file
  -b, --escape               print C-style escapes for nongraphic characters
      --block-size=SIZE      with -l, scale sizes by SIZE when printing them;
                              e.g., '--block-size=M'; see SIZE format below
  -B, --ignore-backups       do not list implied entries ending with ~
  -c                         with -lt: sort by, and show, ctime (time of last
                              modification of file status information);
                              with -l: show ctime and sort by name;
                              otherwise: sort by ctime, newest first
  -C                         list entries by columns
      --color[=WHEN]         color the output WHEN; more info below

Dessa forma, podemos ver todas as opções possíveis que o comando aceita, sua descrição e sintaxe.

Histórico de Comandos

O shell Bash memoriza o histórico de comandos inseridos, permitindo reutilizar comandos recentemente usados. Muitos distribuições registram os últimos 1000 comandos utilizados pelo usuário; o número de comandos armazenados é determinado pela variável de sistema chamada HISTSIZE. O próprio histórico (os últimos 1000 comandos) é armazenado no arquivo .bash_history no diretório pessoal de cada usuário. Para ver todo esse histórico, você pode abrir esse arquivo ou digitar o comando history no terminal:

programicio@Programicio:~$ history
  1  ls
  2  ls -l
  3  ls /usr/
  4  ls -l /usr
  5  ls --help
  6  history

O Linux permite repetir um comando usando seu número no histórico. Por exemplo, na saída acima, o comando ls -l /usr está no número 4. Para repetir esse comando, basta digitar !4 (prefixado por um ponto de exclamação):

programicio@Programicio:~$ !4
ls -l /usr
total 148
drwxr-xr-x   2 root root 61440 Mar  4 19:40 bin
drwxr-xr-x   2 root root  4096 Oct 16 13:38 games
drwxr-xr-x  83 root root 16384 Feb 23 06:47 include
...
drwxr-xr-x   6 root root  4096 Mar  8 07:08 src

Também é possível limpar todo o histórico usando o comando:

history -c
Política de Privacidade

Copyright © www.programicio.com Todos os direitos reservados

É proibida a reprodução do conteúdo desta página sem autorização prévia do autor.

Contato: programicio@gmail.com