Terminal de Comandos - Shell Linux

De Pontão Nós Digitais
Ir para navegaçãoIr para pesquisar
Terminal konsole ativo no Debian Lenny fazendo uso do programa top

Este artigo traz uma lista de comandos básicos usados para controlar alguns dos programas essenciais dos sistemas GNU/Linux. Aprenda-os e você conseguirá usar seu sistema de modo muito mais fácil, útil e rápido, resolvendo problemas ou criando soluções para facilitar seu trabalho.

Todo comando é necessariamente uma ordem a um programa que compõe o sistema e todo comando, desde o mais simples ao mais complexo, nos sistemas GNU/Linux atua dizendo o que um determinado programa deve ou não deve fazer, daí o nome comando.

Vamos usar como exemplo o interpretador de comandos Bash. O bash é um interpretador de comandos, uma espécie de tradutor entre o sistema operacional e o usuário, normalmente conhecido como shell. Permite a execução de seqüências de comandos direto no prompt do sistema ou escritas em arquivos de texto, conhecidos como shell scripts. O comando mais util do bash para acompanhar os demais comandos abaixo e' o history, que mostra a historia de comandos digitados.

O sistema usado como modelo é o Debian Lenny com interface gráfica gnome. Para usar o interpretador de comandos em um sistema com interface gráfica, você poderá proceder de três maneiras. Escolha a forma:

  • Tecle alt + F2 e digite gnome-terminal. Um prompt de comandos irá se abrir;
  • Menu do sistemas vá para “aplicações” > “acessórios” > “terminal”;
  • Tecle ctrl + alt + F1(ou F2, F3...até F6. Para voltar ao modo gráfico tecle F7).


É importante lembrar que boa parte dos comandos aqui descritos só podem ser executados com permissão de root.

Você pode testar os comandos a seguir acompanhando os passos de demonstração e se por ventura algo não sair como esperado, você pode solicitar ajuda no Fórum. Basta fazer o cadastro de usuário.


Comandos básicos

Lista Comandos GNU/Linux - A-Z
Cat. Comando Exemplo de uso

Usuario-e-grupos.png

addgroup – o comando addgroup adiciona um novo grupo no sistema.

root@debian-servidor:/# addgroup teste
Adding group `teste' (GID 1003) ...
Concluído.
root@debian-servidor:/#
Usuario-e-grupos.png adduser – o comando adduser adiciona um novo usuário ao sistema.
root@debian-servidor:/# adduser jose
Adding user 'jose' ...
Adding new group `jose' (1004) ...
Adding new user `jose' (1003) with group 'jose' ...
Creating home directory `/home/jose' ...
Copying files from `/etc/skel' ...
Digite a nova senha UNIX: *****
Redigite a nova senha UNIX: ******
passwd: senha atualizada com sucesso
Modificando as informações de usuário para jose
Informe o novo valor ou pressione ENTER para aceitar o padrão
       Nome Completo []: José Silva
       Número da Sala []:
       Fone de Trabalho []:
       Fone Doméstico []:
       Outro []:
Is the information correct? [Y/n] y
root@debian-servidor:/#
Editor-texto90px.png

cat – o comando cat é usado para ler arquivos de texto. Ele imprime na tela todo conteúdo de um arquivo de texto.

root@debian-servidor:/# cat /etc/apt/sources.list
# Midia
deb cdrom:[Debian GNU/Linux 5.0.0 _Lenny_ - Official i386 DVD Binary-1 20090214-16:54]/ lenny contrib main
#Internet
deb http:// security.debian.org/ lenny/updates contrib main
deb-src http:// security.debian.org/ lenny/updates contrib main
deb http:// ftp.br.debian.org/debian lenny main contrib non-free
deb-src http:// ftp.br.debian.org/debian lenny main contrib non-free
deb-src http:// ftp.br.debian.org/debian-multimedia/ stable main
deb http:// ftp.br.debian.org/debian-multimedia/ stable main
root@debian-servidor:/#
Sistema-icon.png

cd – o comando cd muda o atual diretório de uso do prompt de comandos. Ele é usado da seguinte forma:

# cd + /nome_do_diretório

1° Exemplo – indo do diretório raiz para o diretório /home:

root@debian-servidor:/# cd home
root@debian-servidor:/home#

2° Exemplo – indo do diretório /home para o diretório /etc/init.d:

root@debian-servidor:/home# cd /etc/init.d
root@debian-servidor:/etc/init.d# 

obs: note que para ir do diretório raiz / ao diretório /home não foi necessário colocar a barra em frente ao nome home. Entretanto para ir do diretório /home ao diretório /etc/init.d foi necessário colocar barra / antes do caminho do diretório etc/init.d. Por que isso ocorre? Bem, isto acontece porque toda vez que se quer ir para um diretório localizado dentro do diretório atual do prompt não é necessário colocar a barra antes do nome do primeiro diretório.

Usuario-e-grupos.png

chfn – o comando chfn muda as informações de qualquer usuário. Para usá-lo, basta digitar:

# chfn [nome_do_usuário]

Opções:

# chfn [opção] [nome_do_usuário]

-f = muda o nome completo do usuário;
-r = muda o número da sala do usuário;
-w = altera o número de telefone de trabalho do usuário;
-h = altera o número de telefone residencial do usuário;
-o = altera o outro possível contato telefônico do usuário.

root@debian-servidor:/etc/init.d# chfn jose
Modificando as informações de usuário para jose
Informe o novo valor ou pressione ENTER para aceitar o padrão
       Nome Completo [jose]: José da Silva Sauro
       Número da Sala []: Sala 2
       Fone de Trabalho []: (11) 2424-2424
       Fone Doméstico []: (11) 2323-2323
       Outro []: (11) 9988-9988
root@debian-servidor:/etc/init.d#
Sistema-icon.png

chmod – o comando chmod altera permissões de diretórios e de arquivos. Existe três principais tipos de permissão que um arquivo pode ter. (1) Permissão de leitura, (2) permissão de escrita e (3) permissão de execução.
Existem também três concessões de permissão. (1) Permissão ao usuário criador do arquivo, (2) permissão do grupo ao qual pertence aquele arquivo e (3) permissão a todos os demais usuários.
Para usá-lo com seus atributos é possível usar tanto letras como o modo numérico-octal para permissões. O modo octal usa números de 0 (zero) a 7 (sete). O modo alfabético usa letras para designar as permissões, sendo 'r' leitura, do Inglês 'read', 'w' gravação - do Inglês 'write' e 'x' - do Inglês 'execute'.
O comando é composto por:

chmod [atributos] [nome_do_arquivo]

Atributos do modo octal:
Para arquivos (-)
0 - (zero) permissão negada
1 - permissão de execução
2 - permissão de gravação
3 - permissão de gravação e execução
4 - permissão de leitura
5 - permissão de leitura e execução
6 - permissão de leitura e gravação
7 - soma de todas as permissões

Para diretórios (d)
0 - (zero) permissão negada
1 - permissão para entrar no diretório
2 - permissão para gravar dentro do diretório
3 - permissão de entrar e gravar no diretório
4 - permissão para listar o conteúdo do diretório
5 - permissão de listar e entrar no diretório
6 - permissão de listar e gravar no diretório
7 - soma de todas as permissões

Antes de testar o comando chmod, criamos um arquivo de texto chamado teste.txt na pasta /home/nosdigitais. Com o comando ls -l podemos observar as primeiras letras que indicam quais são as permissões concedidas a esse arquivo no ato de sua criação.

root@debian-servidor:/home/nosdigitais# ls -l
-rw-r--r-- 1 root        root   0 Ago  9 01:17 teste.txt

Este arquivo possui então permissão de leitura, indicado pela letra r, e permissões de escrita, indicado pela letra w, ao usuário criador do arquivo (-rw-r--r--). E possui permissão de leitura aos integrantes do grupo ao qual pertence o arquivo (-rw-r--r--) e a mesma permissão aos demais usuários do sistema (-rw-r--r--). Vamos modificar essas permissões, deixando o arquivo com permissão total a todos os usuários do sistema.

root@debian-servidor:/home/nosdigitais# chmod 777 teste.txt

Vejamos como ficaram as permissões:

root@debian-servidor:/home/nosdigitais# ls -l
-rwxrwxrwx 1 root        root   65 Ago  9 01:17 teste.txt

Note que a linha que demonstra os atuais atributos do aquivo teste.txt contém um pequeno traço - no início para indicar que se trata de um arquivo e não de um diretório. Logo em seguida, há um conjunto de nove letras, sequencialmente dispostas.

- rwx rwx rwx

Isto significa que todas as concessões de permissão foram concedidas a todos os usuários do sistema.

A permissão de leitura r, a permissão de escrita w e a permissão de execução x foram concedidas ao criador do arquivo, ao grupo do arquivo e a todos os demais usuários do sistema.

Vamos mudar novamente as permissões deste arquivo, desta vez usando as letras ao invés dos números, dando permissão apenas de leitura a todos os usuários.

root@debian-servidor:/home/nosdigitais# chmod ugo-x teste.txt

Veja como ficaram as permissões do arquivo:

root@debian-servidor:/home/nosdigitais# ls -l
---x--x--x 1 root        root     65 Ago  9 01:17 teste.txt
Terminal.png

clear – o comando clear limpa a tela do terminal de comandos.

Ao usar o comando clear todas as mensagens escritas da tela do terminal são apagadas, ficando a tela do terminal limpa. Este comando não apaga nenhum arquivo, nenhum texto, ele apenas limpa a tela do terminal para melhorar a visualização. Veja o antes e o depois. Antes:

---x--x--x 1 root   root     0 Ago  9 01:17 teste.txt
root@debian-servidor:/home/nosdigitais# oot@debian-servidor:/home/nosdigitais# cat  
/etc/apt/sources.list
bash: oot@debian-servidor:/home/nosdigitais#: Arquivo ou diretório não encontrado
root@debian-servidor:/home/nosdigitais# # Midia
root@debian-servidor:/home/nosdigitais# oot@debian-servidor:/home/nosdigitais# cat
/etc/apt/sources.list
bash: oot@debian-servidor:/home/nosdigitais#: Arquivo ou diretório não encontrado
root@debian-servidor:/home/nosdigitais# exit
exit
nosdigitais@debian-servidor:~$ clear

Depois:

nosdigitais@debian-servidor:~$





 
Sistema-icon.png

cp – o comando cp é usado para copiar arquivos e diretórios. Seu uso principal se dá da seguinte maneira:

# cp [/arquivo_de_origem] [/arquivo_de_destino]

Vamos copiar o arquivo teste.txt que está situado na pasta /home/nosdigitais para a pasta /home/nosdigitais/Desktop.

root@debian-servidor:/home/nosdigitais# cp /home/nosdigitais/teste.txt /home/nosdigitais/Desktop

Veja que uma cópia do arquivo foi colocada em /home/nosdigitais/Desktop:

root@debian-servidor:/home/nosdigitais# ls /home/nosdigitais/Desktop
teste.txt
root@debian-servidor:/home/nosdigitais#
Sistema-icon.png

date – o comando date retorna o ano, o mês, o dia, a hora, os minutos e os segundos do instante em que é usado.

root@debian-servidor:/home/nosdigitais# date
Dom Ago  9 16:48:58 BRT 2009
Usuario-e-grupos.png

deluser – o comando deluser é usado para apagar usuários cadastrados no sistema.

root@debian-servidor:/home/nosdigitais# deluser jose
Removing user `jose' ...
Concluído.
root@debian-servidor:/home/nosdigitais#
Sistema-icon.png df
Sistema-icon.png dmesg
Rede-icon2.png dnsdomainname
Sistema-icon.png du
Sistema-icon.png echo
Sistema-icon.png find
Sistema-icon.png finger
Sistema-icon.png free
Editor-texto90px.png grep - O comando grep imprime na tela um termo ou um conjunto de termos localizado dentro de um determinado arquivo. Esse comando pode ser muito útil para localizar trechos de código e/ou expressões dentro de um ou mais arquivos ao mesmo tempo.

A sintaxe do grep é: $ grep + paramentros + termo ou expressão a buscar.

Ex: Quero procurar o termo "menuClass" dentro de uma pasta com outras pastas dentro e cheia de arquivos.


$ grep -ir menuClass *


Usuario-e-grupos.png groupdel
Usuario-e-grupos.png groups
Sistema-icon.png halt
Editor-texto90px.png head
Sistema-icon.png hostname
Usuario-e-grupos.png id
Rede-icon2.png ifconfig
Rede-icon2.png ifdown
Rede-icon2.png ifup
Sistema-icon.png jobs
Sistema-icon.png kill
Sistema-icon.png killall
Sistema-icon.png killall5
Editor-texto90px.png less
Editor-texto90px.png ln
Sistema-icon.png locate
logname
ls
lsmod
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname
logname

1 - Nos sistemas GNU/Linux, chama-se de permissões os atributos que um arquivo têm em relação a sua possibilidade de uso pelo criador/dono do arquivo, por integrantes de grupos cujo arquivo possa pertencer ou mesmo por usuários em geral. Para visualizar as permissões de um arquivo é possível utilizar o comando ls.



Tutoriais

Ver Também