Marco Antonio Moreira de Carvalho
 Departamento de Computação  |  Universidade Federal de Ouro Preto

Projeto Treinamento em Algoritmos e Programação Avançada

Utilizando a Linha de Comando

Em um interpretador de comandos (ou linha de comando) é possível acessar, criar, remover e renomear pastas e arquivos, entre outras coisas. Recomendo a leitura do artigo "Dominando a Linha de Comando - Parte I" do Clube do Hardware para que você se familiarize. Abaixo, separei alguns comandos mais básicos e necessários:

 

cd: Possivelmente o comando mais básico do prompt, permite navegar entre diretórios, como em "cd /etc". Você pode tanto indicar o caminho completo até o diretório desejado, como em "cd /var/log/apache2", ou usar caminhos relativos, indicando o destino a partir do diretório atual. Se você está dentro da pasta "/etc" e quer acessar a pasta "/etc/bind", precisa digitar apenas "cd bind". Para subir um diretório, use "cd .." e, para subir dois níveis, use "cd ../..".

 

ls: Lista os arquivos dentro do diretório atual. Por padrão, ele mostra apenas os nomes dos arquivos e não mostra os arquivos ocultos. Para ver tudo, incluindo os arquivos ocultos, use "ls -a". Para ver os tamanho dos arquivos especificados de forma legível ("329M" em vez de "344769698") adicione o parâmetro "h", como em "ls -lh". Você pode ver também os arquivos de qualquer diretório, sem ter que primeiro precisar usar o "cd" para acessá-lo. Para isso, basta indicar o diretório, como "ls -lh /etc".

 

cp: O cp é um comando aparentemente simples, mas que esconde vários segredos. A sintaxe básica para copiar arquivos é usar o comando cp, seguido do nome do arquivo e a pasta para onde ele vai, como em "cp /etc/fstab /tmp". Entretanto, em sua forma básica o cp serve apenas para copiar arquivos isolados; para copiar pastas, é necessário que você adicione a opção "-r", como em "cp -r /home/gdh/* /backup/".

Você pode ainda usar o "*" e a "?" como curingas quando quiser copiar vários arquivos. Para copiar todos os arquivos da pasta atual para a pasta "/mnt/hda6", por exemplo, use "cp * /mnt/hda6". A "?" por sua vez é mais contida, substituindo um único caractere. Por exemplo, "cp arquivo?.txt /mnt/hda6", copia o "arquivo1.txt", "arquivo2.txt" e o "arquivo3.txt", mas não o "arquivo21.txt".

 

mv: O mv serve tanto para mover arquivos de um lugar para o outro, quanto para renomear arquivos, como em:

# cd /etc/squid

# mv squid.conf squid.conf.modelo

 

rm: Por padrão, o rm deleta apenas arquivos simples, como em "rm arquivo.txt". Para que ele remova pastas, é necessário adicionar parâmetro "-r", como em "rm -r arquivos/". 

Tome cuidado ao usar o "-rf", pois ele não pede confirmação, deleta os arquivos diretamente. Você pode muito bem pensar em digitar "rm -rf ./*" (para apagar todos os arquivos do diretório atual) e, na pressa, acabar digitando "rm -rf /*", que apaga todos os arquivos do sistema, incluindo arquivos em todas as partições e em todos os compartilhamentos de rede que estiverem montados (!). Ou seja, ao usá-lo, respire fundo e verifique se realmente está deletando a pasta certa antes de pressionar Enter.

É possível também usar caracteres curingas na hora de remover arquivos. Para remover todos que possuírem a extensão ".jpg", use "rm -f *.jpg". Para remover todos os arquivos que começarem com "img", use "rm -f img*". Lembre-se de que você pode usar também o "?" quando quiser usar o curinga para apenas um caractere específico. Se você quiser remover os arquivos "doc1.txt", "doc2.txt" e "doc3.txt", mas sem remover o "doc10.txt" e o "doc11.txt", você poderia usar o comando "rm -f doc?.txt".

 

mkdir: Cria diretórios, como em "mkdir trabalhos" ou "mkdir /mnt/backup". Para criar pastas recursivamente (ou seja, criar todas as pastas necessárias até chegar a que você pediu, caso necessário), adicione o parâmetro "-p", como em:

# mkdir -p /var/log/apache2

 

rmdir: Remove diretórios. A diferença entre ele e o "rm -f" é que o rmdir remove apenas diretórios vazios, evitando acidentes.

 

man: É impossível para um ser humano (pelo pelo para um ser humano normal ;) memorizar todos os parâmetros de mais do que um punhado de comandos. Assim como em outras áreas, você memoriza os parâmetros que usa com mais freqüência e tem apenas uma vaga noção sobre os demais.

O prompt inclui um sistema de ajuda bastante detalhado, acessível através do comando man. Não apenas os comandos, mas também a grande maioria dos arquivos de configuração possuem páginas de manual com os parâmetros suportados. O principal objetivo das páginas de manual é listar as opções suportadas e não necessariamente serem uma leitura didática. Elas são mais úteis quando você já tem uma boa noção sobre o que o comando faz e precisa se lembrar de uma opção específica do que como um guia de estudos. Para usar, basta chamar o "man" seguido do comando desejado, como em "man ls".

Dentro do leitor, use as setas para rolar a tela e, para sair, pressione a tecla "q". 

Departamento de Computação  |  ICEB  |  Universidade Federal de Ouro Preto
Campus Universitário Morro do Cruzeiro  |  CEP 35400-000  |  Ouro Preto - MG, Brasil
Telefone: +55 (31) 3559-1663  |  marco.opt@gmail.com