Você está na página 1de 2

O básico da linha de comando

junho 18, 2008 " 1:31 pm


Ter fluência no uso da linha de comando é um pré-requisito para qualquer bom administr
ador. Usar o prompt é, de certa forma, muito parecido com aparecer uma segunda língu
a, onde os comandos equivalem às palavras e a sintaxe e os argumentos usados equiv
alem à gramática. A única forma de adquirir um bom vocabulário e, principalmente, de ent
ender a gramática é estudando, mas por outro lado, a única forma de adquirir fluência é re
almente falando, o que na nossa analogia equivale a acumular "horas de vôo" no uso
do terminal. No começo é normal que você fique "catando milho" e precise pesquisar e
olhar as páginas de manual para se lembrar mesmo dos comandos mais simples, mas co
m o tempo usar o terminal acaba sendo uma coisa tão natural quanto falar ou escrev
er. O importante é não desanimar.
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 deseja
do, como em "cd /var/log/apache2", ou usar caminhos relativos, indicando o desti
no a partir do diretório atual. Se você está dentro da pasta "/etc" e quer acessar a p
asta "/etc/bind", precisa digitar apenas "cd bind". Para subir um diretório, use "
cd .." e, para subir dois nível, use "cd ../..".
pwd : Serve apenas para confirmar o diretório atual. É usado sem parâmetros, simplesme
nte "pwd".
ls : Lista os arquivos dentro do diretório atual. Por padrão, ele mostra apenas os n
omes dos arquivos e não mostra os arquivos ocultos. Para ver tudo, incluindo os ar
quivos ocultos, use "ls -a", para ver também as permissões de acesso e o tamanho dos
arquivos, use o "ls -la". Para ver os tamanho dos arquivos especificados de for
ma legível ("329M" em vez de "344769698") adicione o parâmetro "h", como em "ls -lha
". Você pode ver também os arquivos de qualquer diretório, sem ter que primeiro precis
ar usar o "cd" para acessá-lo. Para isso, basta indicar o diretório, como "ls -lha /
etc".
Em muitas distribuições, como no CentOS, o "ls" mostra uma listagem colorida, que to
rna fácil identificar os arquivos (pastas aparecem em azul, arquivos compactados e
m vermelho) e assim por diante, o que torna mais fácil identificar os arquivos. Pa
ra ativar esse recurso em outras distribuições, adicione a linha:
alias ls="ls "color=auto"
No final do arquivo "/etc/profile". Outra personalização muito usada é fazer com que o
s comandos "rm", "cp" e "mv" peçam confirmação, o que reduz a possibilidade de causar
danos catastróficos ao digitar comandos incorretos. Para isso, adicione as três linh
as abaixo no final do arquivo "/etc/profile":
alias rm="rm -i"
alias mv="mv -i"
alias cp="cp -i"
cp : O cp é um comando aparentemente simples, mas que esconde vários segredos. A sin
taxe 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, é neces
sário que você adicione a opção "-r" (que ativa a cópia recursiva), como em "cp -r /home/g
dh/* /backup/"
Um parâmetro bastante útil é o "-a", que faz com que o cp sempre copie recursivamente,
mantenha as permissões do arquivo original e preserve os links simbólicos que encon
trar pelo caminho. Em resumo, faz o cp se comportar de uma forma mais simples e
lógica.
Você pode ainda usar o "*" e a """ como curingas quando quiser copiar vários arquivo
s. Para copiar todos os arquivos da pasta atual para a pasta "/mnt/hda6", por ex
emplo, 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", "a
rquivo2.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 r
enomear 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". Par
a que ele remova pastas, é necessário adicionar parâmetro "-r", como em "rm arquivos/"
. Em muitas distribuições, o padrão do rm é pedir confirmação antes de remover cada arquivo
o que se torna inviável ao remover um diretório com diversos arquivos. A confirmação é el
iminada ao adicionar o parâmetro "-f", o que nos leva ao "rm -rf" (que é o formato m
ais comumente usado). Tome cuidado ao usar o "-rf", pois ele não pede confirmação, del
eta 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 compart
ilhamentos 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 t
odos que possuírem a extensão ".jpg", use "rm -f *.jpg". Para remover todos os arqui
vos 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ê quis
er remover os arquivos "doc1.txt", "doc2.txt" e "doc3.txt", mas sem remover o "d
oc10.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 cr
iar pastas recursivamente (ou seja, criar todas as pastas necessárias até chegar a q
ue 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 apen
as diretórios vazios, evitando acidentes.
Alguns atalhos:
Ctrl+L : Limpa a tela, atalho para o comando "clear". Ao usar bastante o termina
l, você acaba se acostumando a usá-lo bastante.
Ctrl+C : Este é um dos atalhos mais usados no terminal, ele serve para terminar a
execução de qualquer comando. Se você digitou um "tar -zcvf arquivos.tar.gz /mnt/arqui
vos" e quer abortar o backup para fazê-lo em outra hora, ou se algum programa bloq
ueou o teclado e você quer finalizá-lo na marra, o Ctrl+C é a solução.
CTRL+L : Atalho para o comando logout, que encerra a sessão atual. Se você usou o co
mando "su -" para virar root, o Ctrl+L vai fazê-lo voltar ao prompt inicial. Press
ionando Ctrl+L mais uma vez, você faz logout, fechando o terminal.

Você também pode gostar