Sei sulla pagina 1di 45

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

FUNDAMENTOS DO SISTEMA LINUX - COMANDOS DO LINUX

Autor: Davidson Rodrigues Paulo <davidsonpaulo at gmail.com>


Data: 28/05/2006
MANIPULAO DE ARQUIVOS E DIRETRIOS

1 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

LS

O comando exibe arquivos ou o contedo de um ou vrios diretrios.


ls

Sintaxe:
$ ls [opes] [arquivo]

Opes:
-a: Exibe arquivos ocultos;
-A: No exibe os diretrios . e ..;
--author: Mostra o autor (criador) de cada arquivo;
-b: Exibe caracteres de escape octais no lugar dos caracteres que no podem ser vistos, como o
espao em branco;
--block-size=[tamanho]: Exibe o tamanho dos arquivos em mltiplos do nmero de bytes
especificado nesse parmetro;
-B: No exibe arquivos de backup (terminados com ~);
-c: Lista os arquivos por ordem da data da ltima modificao;
-C: Exibe a listagem em colunas;
--color=[quando]: Controla quando as cores devem ser usadas para distinguir os tipos de arquivos.
Os valores aceitos so:
never: No usa cores pra nenhum tipo de arquivo;
always: Usar cores para todo tipo de arquivo;
auto: Seleciona quais arquivos sero exibidos em cores.
-d: Exibe o diretrio especificado, e no o seu contedo;
-f: Ativa os parmetros -a e -U e desabilita os parmetros -l, -s e -t;
-F: Acrescenta um caracter grfico ao final de cada arquivo para identificar o seu tipo;
-G: No exibe informaes dos grupos a que os arquivos pertencem;
-h: Exibe os tamanhos dos arquivos em uma forma legvel (2K, 21M, 1G);
--si: Semelhante ao -h, mas usa mltiplos de 1000 bytes ao invs de 1024;
-H: Exibe os arquivos para os quais os links simblicos apontam, ao invs de listar s o link;
-i: Exibe o nmero de ndice (I-node) dos arquivos;
-I: No exibe entradas que contiverem o padro informado;

2 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-k: Equivalente a --block-size=1k;


-l: Listagem detalhada, com diversas informaes sobre os arquivos;
-L: Quando listar links simblicos, lista o local para onde o link aponta, e no o link propriamente
dito;
-m: Lista os arquivos em linhas, separando cada item com uma vrgula;
-n: O mesmo que o parmetro -l, mas mostra as UID's e GID's ao invs dos nomes dos grupos;
-o: O mesmo que o parmetro -l, mas no exibe as informaes sobre o grupo;
-p: Adiciona um caracter para identificar o tipo do arquivo. O mesmo que -F, mas no utiliza o
caracter * (asterisco);
-Q: Exibe os nomes das entradas entre " (aspas duplas);
-r: Organiza a lista na ordem inversa;
-R: Lista recursivamente o contedo dos diretrios e subdiretrios do diretrio atual;
-s: Exibe o tamanho de cada arquivo, em mltiplos de blocos (especificados com o parmetro
--block-size=[tamanho]);
-S: Organiza a lista de acordo com o tamanho do arquivo;
-t: Lista pela data de modificao;
-u: Organiza a listagem pela data do ltimo acesso;
-U: No organiza a listagem, exibindo os arquivos na seqncia em que esto gravadas no diretrio;
-w: Ajusta o tamanho da tela para o nmero de colunas especificado;
-X: Organiza a listagem em ordem alfabtica;
-1: Lista apenas um arquivo por linha;
Em [arquivo], devemos informar quais arquivos (arquivos, diretrios, dispositivos, links, etc.) devem ser
listados. Se no for informado nada, ser listado o contedo do diretrio atual (.).
Pode-se tambm utilizar curingas para filtrar os arquivos que sero listados. Por exemplo, podemos usar ls
*.sxw para listar somente os arquivos terminados em .sxw.
CD

O comando , sigla de change directory (selecionar diretrio), serve para acessar um determinado diretrio.
cd

Sintaxe:
$ cd [diretrio]

3 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

Lembrando a lista dos diretrios do sistema:


..: Diretrio acima do atual. Se voc estiver no diretrio /home/aluno/ e quiser acessar o diretrio
/home/, digite cd ... Se quiser acessar o diretrio /home/davidson/, digite cd ../davidson/;
~: Diretrio pessoal do usurio atual, ou seja, /home/[usurio]/;
-: Diretrio anterior. Se voc estava no diretrio /etc/ e mudou para o diretrio /home/, digite cd para voltar ao diretrio /etc/.
Se for usado sem parmetro, ou seja, apenas cd, voc ser redirecionado para o diretrio pessoal do usurio
atual.
MKDIR

O comando

, abreviatura de make directory (criar diretrio), usado para criar um novo diretrio.

mkdir

Sintaxe:
$ mkdir [opes] [novo diretrio]

Opes:
-m: Especifica as permisses que do novo diretrio ter;
-p: Cria todos os diretrios e subdiretrios necessrios;
-v: Exibe uma mensagem para cada diretrio criado.
Em [novo diretrio] devemos colocar os diretrios que queremos criar. No necessrio digitar o caminho
completo, caso queiramos criar um diretrio dentro do diretrio atual. Podemos criar vrios diretrios com
um nico comando, bastando separ-los com espaos. Se quiser que o nome do novo diretrio tenha
espaos em branco, escreva-o entre aspas duplas, dessa forma:
$ mkdir /home/davidson/"diretrio com espaos em branco"

RMDIR

Esse comando utilizado para apagar um diretrio vazio.

4 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

Sintaxe:
$ rmdir [opes] [diretrio]

Opes:
-p: Remove os diretrios-pai do diretrio selecionado, se possvel. Assim, o comando rmdir -p
a/b/c/ vai apagar o diretrio a/b/c/, depois o diretrio a/b/ e por fim o diretrio a/, se possvel;
-v: Mostra os detalhes da remoo dos diretrios.
Podem ser especificados mais de um diretrio por vez. O rmdir s remove diretrio vazios.
PWD

O
, sigla de print working directory (exibir diretrio de trabalho), exibe o diretrio atual. equivalente a
echo $PWD.
pwd

Uso:
$ pwd

CAT

O comando
concatena arquivos e imprime na sada padro (exibe na tela). Em arquivos, usamos o cat
para listar seu contedo na tela. Com o uso de direcionadores, podemos us-lo para unir diferentes arquivos
em um s, dentre outra funes.
cat

Sintaxe:
$ cat [opes] [arquivo]

Opes:
-b: Numera as linhas, com exceo das linhas em branco;
-E: Mostra um "$"? (cifro) para indicar fim de linha;
-n: Numera todas as linhas, incluindo as em branco;
-s: No mostra mais do que uma linha em branco. Se houver duas ou mais linhas em branco

5 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

consecutivas, elas so truncadas e apenas uma mostrada;


-T: Substitui tabulaes pelos caracteres "^I"?;
-v: Substitui os caracteres no imprimveis por smbolos, exceto tabulaes e final de linha.
Exemplos de uso:
$ cat [arquivo1 arquivo2 arquivo3 ... arquivoN] > [arquivo]

Isso pode ser usado em qualquer tipo de arquivo, inclusive arquivos binrios. prtica comum utilizar isso
para juntar arquivos de vdeo grandes, como filmes, que muitas vezes so divididos em vrias partes.
Veja no exemplo abaixo, como unir as 2 partes do filme Matrix em um nico arquivo:
$ cat the-matrix_part-1.mpeg the-matrix_part-2.mpeg > the-matrix.mpeg
Vale lembrar que tal procedimento no corretamente executado com arquivos AVI.
TAC

O faz o mesmo que o cat, mas exibe o arquivo pela ordem inversa, ou seja, comeando pela ltima linha e
terminando com a primeira.
tac

Uso:
$ tac [arquivo]

TOUCH

O comando
um arquivo.

touch

usado atualizar as informaes sobre as datas de ltimo acesso e ltima modificao de

Sintaxe:
$ touch [opes] [arquivo]

Se o arquivo no existir, ele criado, por padro. Isso faz o touch ser muito utilizado para criar arquivos
6 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

vazios, atravs do comando touch [arquivo].


Opes:
-a: Modifica apenas a data do ltimo acesso;
-c: No cria arquivos, caso eles no existam;
-m: Modifica apenas a data de modificao;
-t: A data e hora a ser utilizada para o ltimo acesso ou ltima modificao. O formato utilizado
MMDDhhmm (ms, dia, hora e minuto);
CP

O , abreviao de copy (copiar), utilizado para copiar arquivos e diretrios de um local para outro, com o
mesmo nome ou com nome diferente.
cp

Sintaxe:
$ cp [opes] [origem] [destino]

-b: Cria um arquivo dos arquivos de destino se eles estiverem para ser sobrescritos;
-P: Quando tratar de links simblicos, copia o link, e no o local para onde o link aponta;
-f: Operao forada. Se um dos arquivos de destino no puder ser aberto, apaga-o e repete a
operao;
-i: Pede confirmao antes de sobrescrever um arquivo;
-L: Quando tratar de links simblicos, copia o local para o onde o link aponta, e no o link;
-p: Preserva as propriedades do arquivo (permisses, dono e datas);
--preserve=[propriedade]: Escolhe quais propriedades preservar, separadas por vrgula. Podem ser:
mode: Preserva as permisses;
ownership: Preserva a informao de dono do arquivo;
timestamp: Preserva as datas de acesso e modificao.
--no-preserve=[propriedade]: Escolhe quais propriedades no devem ser preservadas. As opes
so as mesmas que do parmetro --preserve;
-R ou -r: Modo recursivo, copia todos os arquivos e subdiretrios do diretrio especificado. Esse
parmetro deve ser usado para copiar diretrios inteiros;
--target-directory=[diretrio]: Especifica para qual diretrio devem ser copiados os

7 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

arquivos/diretrios especificados;
-u: Copia apenas os arquivos novos. Se um arquivo que estiver sendo copiado j existir no diretrio
de destino, sua cpia ser ignorada;
-v: Mostra os detalhes da cpia dos arquivos.
Exemplos de uso:
Para copiar o arquivo file.gz para o diretrio /tmp/:
$ cp file.gz /tmp

Para para fazer uma cpia do arquivo file.gz com o nome file-copia.gz:
$ cp file.gz file-copia.gz

Para copiar os arquivos file1, file2 e file3 para o diretrio /home/davidson/doc/:


$ cp file1 file2 file3 /home/davidson/doc

Para copiar o diretrio img/ para o diretrio /tmp/upload/:


$ cp -r img /tmp/upload

Para copiar os arquivos file1, file2 e file3 e o diretrio img/ para o diretrio /tmp/upload/:
$ cp -r file1 file2 fil3 img /tmp/upload

MV

Utilizamos o

mv

mover ou renomear arquivos.

Sintaxe:
$ mv [opes] [destino]

Opes:
-b: Cria um backup dos arquivos de destino, se eles forem sobrescritos;
8 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-f: Fora as operaes, sem fazer perguntas caso seja necessrio sobrescrever arquivos e outros;
-i: Modo interativo, pede confirmao para sobrescrever arquivos;
--target-directory=[diretrio]: especifica o diretrio de destino para os arquivos;
-u: S move os arquivos novos. Se o arquivo que est sendo movido j estiver presente no
diretrio de destino, ele ignorado;
-v: Mostra os detalhes do processo de movimentao.
Exemplos de uso:
Para mover o arquivo file1 para o diretrio /home/davidson/doc/:
$ mv file1 /home/davidson/doc

Para mover o diretrio /home/davidson/doc/ para /tmp/upload/:


$ mv /home/davidson/doc /tmp/upload

Para renomear o arquivo package.tar.gz para pacote.tar.gz:


$ mv package.tar.gz pacote.tar.gz

Para mover o arquivo file1 e o diretrio img/ para o diretrio /tmp/upload/:


$ mv file1 img /tmp/upload

RM

rm

utilizado para excluir arquivos.

Sintaxe:
$ rm [opes] [arquivo]

Opes:
-f: Modo forado, no pede confirmao para realizar as operaes;
-i: Pede confirmao antes de remover qualquer arquivo;

9 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-R, -r: Exclui recursivamente todo o contedo do diretrio e o prprio diretrio. Quando quiser
excluir um diretrio que no est vazio, utilize esse parmetro;
-v: Mostra os detalhes das excluses.
LN

Esse o comando utilizado para criar links, simblicos ou absolutos.


Sintaxe:
$ ln [opes] [alvo] [nome do link]

Opes:
-b: Se houver um arquivo com o mesmo nome do link que est sendo criado no diretrio de destino,
cria um backup do arquivo existente;
-d: Permite ao administrador do sistema (root) criar um hardlink (link absoluto) para um diretrio;
-f: Fora a criao dos links;
-n: Trata um link simblico pra um diretrio como se fosse um arquivo normal;
-i: Pergunta antes de remover arquivos existentes;
-s: Cria um link simblico;
--target-directory=[diretrio]: Especifica em qual diretrio o link deve ser criado;
-v: Exibe o nome de cada link antes de cri-lo.
Exemplos de uso:
Se voc quiser criar um link simblico para o arquivo /home/davidson/doc/ no diretrio atual, com o mesmo
nome do diretrio real (no caso, doc):
$ ln -s /home/davidson/doc

Se voc quiser fazer a mesma coisa, mas preferir que o link criado tenha o nome "documentos":
$ ln -s /home/davidson/doc documentos

Se voc quiser criar um link absoluto (hardlink), oculte o parmetro -s:

10 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

$ ln /home/davidson/doc

CMP

Esse comando utilizado para comparar dois arquivos e mostrar a primeira diferena entre eles. Use para
certificar-se de que dois arquivos possuem ou no o mesmo contedo.
Sintaxe:
$ cmp [opes] [arquivo1] [arquivo2]

Opes:
-b: Imprime os bytes que so diferentes entre si;
-i [n]: No considera os primeiros [n] bytes de cada arquivo;
-l: Mostra os nmero dos bytes e os valores diferentes;
-s: No mostra nenhum detalhe, apenas sai com status 1 se alguma diferena for encontrada.
Exemplos de uso:
Vamos comparar os arquivos file1 e file2:
$ cmp file1 file2

file1 file2 differ: byte 10, line 2


DIFF

Esse comando compara dois arquivos de texto e mostra as diferenas entre eles.
Sintaxe:
$ diff [opes] [arquivo1] [arquivo2]

Opes:
-i: Ignora as diferenas de letras maisculas/minsculas;

11 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-E: Ignora as diferenas de tabulao;


-b: Ignora diferenas na quantidade de espao em branco;
-w: Ignora qualquer espao em branco;
-B: Ignora linhas em branco a mais ou a menos;
-a: Compara os arquivos como arquivos de texto, ainda que no sejam;
-u [n]: Mostra [n] linhas do contedo final do arquivo1, adicionadas as diferenas do arquivo2;
-q: Mostra apenas se o contedo dos arquivos so ou no diferentes;
-y: Mostra os arquivos em duas colunas, indicando as diferenas;
-t: Expande as tabulaes, convertendo-as em espaos, na sada;
-r: Compara recursivamente todo o contedo de um diretrio;
-S [arquivo]: Quando comparar diretrios, inicia a comparao pelo arquivo especificado.
Exemplos de uso:
Vamos considerar os arquivos file1 e file2, com o seguinte contedo:
$ cat file1

5 f j 33
diferena
2ac1
1t4f
6bc_
10 i r 3
$ cat file2

5 f j 33
2ac1
1t4f
6bc_
10 i r 3
outra diferena
Aplicando o

diff

nos dois arquivos, temos o seguinte retorno:

$ diff file1 file2

2d1
< diferena

12 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

6a6
> outra diferena
O diff exibe informaes sobre o que necessrio fazer para que o contedo de file1 seja igual ao de file2.
Nesse caso, 2d1 quer dizer que a diferena foi encontrada na linha 2, e que necessrio apagar (d = delete)
a palavra diferena do arquivo file1. O 6a6 nos diz que a diferena foi encontrada na linha 6, e que
necessrio adicionar (a = add) a linha outra diferena no arquivo file1.
O parmetro -y exibe esses parmetros de forma mais clara:
$ diff -y file1 file2

5 f j 33
diferena
2ac1
1t4f
6bc_
10 i r 3

5 f j 33
<
2ac1
1t4f
6bc_
10 i r 3
> outradiferena

Veja que os sinais de maior e menor (>, <) sempre apontam para a linha que diferente. Se a diferena
estiver no primeiro arquivo, listado esquerda, ela deve ser apagada. Se a diferena estiver no segundo
arquivo, listado direita, ela deve ser adicionada.
O diff, quando usado em conjunto com o utilitrio patch, fornece uma grande funcionalidade para
atualizaes. Um grande exemplo o cdigo-fonte do kernel Linux (http://www.vivaolinux.com.br/linux/).
Ao invs de gravar a nova verso do kernel inteira, possvel gravar a penas as diferenas entre eles, algo
como:
$ diff [kernel-antigo] [kernel-novo] > diferenas.diff

E depois utilizar o utilitrio patch para gravar as diferenas no kernel-antigo, fazendo-o ficar com o mesmo
contedo de kernel-novo. A grande vantagem que no necessrio o usurio baixar todo o kernel, que
muito grande, mas apenas o arquivo com as diferenas, bem pequeno.
PATCH

Utilizamos esse comando para atualizar as diferenas geradas atravs do comando diff. Suponhamos os
arquivos file1 e file2, que so diferentes. Podemos criar as diferenas entre os dois arquivos com o
13 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

comando diff:
$ diff file1 file2 > file.diff

Esse comando gera um arquivo file.diff com as diferenas entre os arquivos file1 e file2. Podemos agora
usar o comando patch para aplicar as diferenas no arquivo file1, fazendo seu contedo ficar igual ao de
file2:
$ patch file1 file.diff

Sintaxe:
$ patch [opes] [arquivo] [arquivo de patch] (para arquivos)
$ patch [opes] < [arquivo de patch] (para diretrios)

Opes:
-p [n]: Nvel do diretrio onde ser aplicado o patch. Se [n] for 0, o patch ser aplicado no diretrio
atual. Se for 1, ser aplicado no diretrio acima (..), se 2, 2 diretrios acima (../..) e assim por
diante;
-b: Cria cpias dos arquivos originais antes de aplicar o patch;
-binary: L e grava usando o modo binrio;
-d [diretrio]: Muda para o diretrio especificado antes de aplicar o patch;
-E: Remove arquivos vazios aps a aplicao do patch;
-n: Interpreta o arquivo de patch como um .diff normal;
-N: No desfaz patches j aplicados;
-s: Modo silencioso, no exibe mensagens de erro;
-u: Interpreta o patch em formato unificado. Use isso se o arquivo de patch foi gerado com diff -u.

MANIPULAO E FILTRAGEM DE TEXTO

14 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

GREP

O
utilizado para encontrar padres em arquivos de texto, ou, em outras palavras, procura num
arquivo todas as linhas que possuem a palavra ou expresso informada e as exibe na tela.
grep

Sintaxe:
$ grep [expresso] [arquivo]

Assim, se voc quiser varrer o arquivo /etc/fstab procurando pelas linhas que contm o texto "/dev/fd0",
digite:
$ grep /dev/fd0 /etc/fstab

/dev/fd0

/media/floppy0 auto rw,user,noauto 0

Se o padro informado no for encontrado no arquivo especificado, no exibida nenhuma mensagem.


CUT

O
utilizado para selecionar colunas de texto em um arquivo. Suponhamos que voc tenha um arquivo
da seguinte forma:
cut

A1 B1 C1
A2 B2 C2
A3 B3 C3
E precise, por algum motivo, que somente a terceira coluna seja exibida na tela, dessa forma:
C1
C2
C3
exatamente isso que o cut far para ns.
Sintaxe:

15 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

$ cut [opes] [arquivo]

Opes:
-c: Especifica quais caracteres sero exibidos;
-d: Especifica qual o caracter ser usado como delimitador de campo;
-f: Lista dos campos que sero exibidos;
-s: No exibe as linhas que no contm os delimitadores especificados em -d;
--output-delimiter=[string]: Utiliza a string (seqncia de caracteres) especificada como o delimitador
dos campos na sada.
Exemplos de uso:
Considerando o arquivo lista.txt com o contedo mostrado acima, se quisermos exibir somente o quinto
caracter de cada linha, usamos:
$ cut -c 5 lista.txt

1
2
3
Se quisermos exibir os primeiros 5 caracteres, utilizamos -5 ao invs de 5:
$ cut -c -5 lista.txt

A1 B1
A2 B2
A3 B3
Se quisermos exibir do quinto caracter em diante, usamos 5-, assim:
$ cut -c 5- lista.txt

1 C1
2 C3
3 C3
Por fim, para exibir do segundo at o sexto caracter:
$ cut -c 2-6 lista.txt
1 B1
16 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

2 B2
3 B3
Repare agora que o delimitador de cada coluna o espao em branco. Assim, se quisermos exibir apenas o
primeiro campo, usamos:
$ cut -f1 -d' ' lista.txt

A1
A2
A3
O parmetro -f1 informa que queremos que seja exibido o primeiro campo, enquanto -d' ' (dois acentos
agudos separados por espao) informa que o separador de campos o espao em branco. O parmetro -d
no precisa ser utilizado no caso de o arquivo utilizar TAB (tabulao) como separador de campos.
Seguindo esse raciocnio, se quisermos exibir os campos 1 e 3, usamos:
$ cut -f1,3 -d' ' lista.txt

A1 C1
A2 C3
A3 C3
Com o uso do direcionador | (pipe) podemos processar o mesmo arquivo vrias vezes com o cut, de modo a
podermos fazer um processamento poderoso do arquivo de texto. Alm disso, ele aceita a sada de outros
programas como entrada, atravs do mesmo direcionador |.
HEAD

Usamos esse comando para exibir as linhas iniciais de um arquivo.


Sintaxe:
$ head [opes] [arquivo]

Opes:
-c [-][n]: Sem o - (hfen), mostra os primeiros [n] bytes do arquivo. Com o -, mostra todos os bytes
com exceo dos [n] ltimos;

17 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-n [-][n]: Sem o -, mostra as primeiras [n] linhas do arquivo. Com o -, mostra todas as linhas com
exceo das [n] ltimas;
-v: Imprime um cabealho com o nome do arquivo.
Exemplos de uso:
Para ver as primeiras 5 linhas do arquivo file, faa:
$ head -n 5 file

1
2
3
4
5
Se quiser exibir todas as linhas menos as 3 ltimas:
$ head -n -3 file

1
2
3
4
5
6
7
MORE

Usamos esse comando para realizar a paginao de arquivos de texto cujo contedo no cabe na tela.
Sintaxe:
$ more [opes] [arquivo]

Opes:
-d: Exibe as mensagens [Press space to continue, 'q' to quit] (pressione espao para continuar, 'q'
para sair). Ao se pressionar espao, a tela rola uma pgina inteira. Se for pressionada alguma tecla
18 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

invlida, exibida a mensagem [Press 'h' for instructions.] (pressione 'h' para instrues.);
-l: Evita que ocorram pausas toda vez que seja encontrado o caracter "^L" (alimentao de
formulrio) no texto;
-s: Se houver mltiplas linhas em branco num arquivo, trunca elas em apenas uma;
+/[padro]: Comea a mostrar o texto a partir da primeira linha que contm o padro informado;
+[nmero]: Especifica qual linha deve ser a primeira a ser mostrada;
-[nmero]: Especifica o tamanho da tela, em linhas.
Assim, quando quiser ler um texto muito extenso sem precisar abrir um editor de textos para isso, use o
more. O texto ser exibido at ocupar a tela inteira, e ento aparecer um prompt escrito "--More--(xx%)".
Presssione Enter para rolar o texto linha por linha. Se quiser cancelar a exibio e voltar para o prompt de
comando, pressione "q".
possvel usar o more para exibir vrios arquivos seqencialmente. Basta informar todos os arquivos
separados por espao.
LESS

O less tem a mesma utilidade do more, com a vantagem de poder rolar o texto exibido para cima e para
baixo atravs do uso dos direcionais, alm de contar com um localizador de texto. Para digitar o padro que
voc deseja procurar precedido de / (barra).
Sintaxe:
$ less [arquivo]

SORT

Usamos esse comando para classificar as linhas de um arquivo de texto.


Sintaxe:
$ sort [opes] [arquivo]

Opes:

19 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-b: Ignora linhas em branco;


-d: Descarta quaisquer linhas iniciadas com caracteres que no sejam espao em branco ou
alfanumricos;
-f: Ignora a diferena entre caracteres maisculos e minsculos;
-r: Exibe a lista na ordem inversa;
-n: Organiza os nmeros na ordem aritmtica. Sem essa opo, a seqncia de caracteres 100, 10,
50 seria exibida na ordem 10, 100, 50. Com a opo -n, eles so exibidos na ordem 10, 50, 100;
-c: Verifica se o arquivo j est organizado. Se no estiver, retorna a mensagem disorder on
[arquivo] (desordem em [arquivo]);
-o [arquivo]: Grava a sada do comando sort no arquivo especificado;
-m [arquivo1] [arquivo2]: Combina o contedo dos dois arquivos gerando um nico arquivo. Esse
comando s funciona se ambos os arquivos j estiverem ordenados;
-i: ignora os caracteres fora da faixa octal ASCII 040-0176;
-t [caracter]: Usa o caracter especificado ao invs de espao em branco como delimitador durante a
organizao das linhas;
+[nmero 1] +[nmero 2]: Especifica qual campo (coluna) ser usado como referncia na
organizao. Os campos comeam a ser contados de 0, e o separador de campos padro o
espao. Para selecionar outro delimitador, use o parmetro -t. Os campos sero organizados de
[nmero 1] at [nmero 2]. Se [nmero 2] no for especificado, os campos sero organizados de
[nmero 1] at o final da linha;
-k [nmero 1] [nmero 2]: Idntico ao parmetro anterior, mas os campos comeam a ser contados
de 1.
Exemplos de uso:
Suponha que voc tenha um arquivo file.list com o seguinte contudo:
$ cat file.list

5 f j 33
2ac1
1t4f
6bc_
10 i r 3
Ao usarmos o comando sort, as linhas sero organizadas de acordo com a primeira coluna:

20 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

$ sort file.list

10 i r 3
1t4f
2ac1
5 f j 33
6bc_
Veja, entretanto, que temos um problema aqui: o 10 foi posto antes do 1, seguindo a ordem alfabtica e no
aritmtica. Para corrigir isso, acrescentamos o parmetro -n:
$ sort -n file.list

1t4f
2ac1
5 f j 33
6bc_
10 i r 3
Agora, se quisermos organizar as linhas tomando como referncia a segunda coluna ao invs da primeira,
fazemos o seguinte:
$ sort +1 file.list

2ac1
6bc_
5 f j 33
10 i r 3
1t4f
Podemos obter o mesmo resultado de outra forma:
$ sort -k 2 file.list

2ac1
6bc_
5 f j 33
10 i r 3
1t4f
Por fim, para gravar o resultado no arquivo fileorder.list, basta acrescetar o parmetro -o fileorder.list.

21 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

TAIL

Esse comando utilizando para mostrar as ltimas linhas de um arquivo de texto.


Sintaxe:
$ tail [opes] [arquivo]

Opes:
-c [n]: Exibe apenas os ltimos [n] bytes do arquivo;
-n [n]: Exibe as ltimas [n] linhas do arquivo;
-f: Fica monitorando o arquivo, e exibe todas as novas linhas adicionadas a ele, em tempo real. Isso
muito utilizado para monitorar arquivos de log.
WC

Conta o nmero de linhas, palavras, caracteres e bytes nos arquivos.


Sintaxe:
$ wc [opo] [arquivo]

Opes:
-c: Exibe apenas o nmero de bytes;
-m: Exibe o nmero de caracteres;
-l: Exibe o nmero de linhas;
-L: Exibe o comprimento, em caracteres, da maior linha do arquivo;
-w: Exibe o nmero de palavras encontradas.
Se for usado sem argumentos, o wc exibe o nmero de linhas, palavras e caracteres do arquivo,
respectivamente:
$ wc file.list

20 42 file.list

22 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

PESQUISA E INFORMAES

23 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

FIND

O
(procurar, em ingls) uma ferramenta que utilizamos para localizar arquivos ou diretrios no sistema
de arquivos.
find

Sintaxe:
$ find [opes] [caminho] [expresso] [aes]

Opes:
-amin [n]: Procura arquivos que foram acessados h [n] minutos atrs;
-anewer [arquivo]: Procura arquivos que foram acessados depois do [arquivo];
-atime [n]: Procura arquivos que foram acessados h [n] dias atrs;
-cmin [n]: Procura arquivos que tiveram seu status alterado h [n] minutos atrs;
-cnewer [arquivo]: Procura arquivos que tiveram seu status alterado depois do [arquivo];
-empty: Procura arquivos vazios e que sejam como arquivos regulares ou diretrios;
-fstype [tipo]: Procura apenas arquivos que estejam gravados em sistemas de arquivos do tipo
especificado;
-gid [n]: Procura por arquivos cujo GID seja [n];
-group [grupo]: Procura por arquivos que pertenam ao grupo informado;
-inum [n]: Procura o arquivo cujo I-node seja [n];
-mmin [n]: Procura arquivos que foram modificados a [n] minutos atrs;
-mtime [n]: Procura arquivos que foram modificados a [n] dias atrs;
-name [expresso]: Procura arquivos cujo nome coincida com a expresso digitada;
-newer [arquivo]: Procura arquivos que foram modificados depois do [arquivo];
-nouser: Procura arquivos cuja UID no esteja registrada no sistema;
-nogroup: Procura arquivos cuja GID no esteja resgistrada no sistema;
-path [expresso]: Realiza a busca nos diretrios que coincidam com a expresso informada;
-perm [permisses]: Procura arquivos que contenham as permisses informadas, no modo octal ou
literal;
-perm [-/+][permisses]: Aplica as permisses informadas para os arquivos encontrados;
-regex [expresso]: Localiza os arquivos que coincidirem com a expresso regular informada.
Lembre-se que expresses simples so diferentes de expresses regulares;
-size [n][b/c/k/w]: Localiza os arquivos cujo tamanho seja [n] mltiplos de:

24 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

b: 512 bytes;
c: 1 byte;
k: 1 kilobyte;
w: 2 bytes.
-type [tipo]: Procura por arquivos que sejam de um tipo especfico:
b: dispositivo de bloco;
c: dispositivo de caracter;
d: diretrio;
p: duto nomeado (FIFO);
f: arquivo regular;
l: link simblico;
s: soquete.
-uid [nmero]: Procura por arquivos cuja UID seja igual ao [nmero];
-used [n]: Procura por arquivos que tenham sido acessados [n] dias aps seu status ter sido
modificado;
-user [usurio]: Procura por arquivos cujo dono seja o [usurio].
O caminho o diretrio dentro do qual se vai realizar a busca. Para buscar em todo o sistema de arquivos,
deve-se colocar /. Se a busca for feita no diretrio atual, pode-se ignorar esse parmetro.
A expresso deve ser o nome do arquivo que se est procurando, com ou sem curingas. Essa expresso
pode ser omitida dependendo da opo de pesquisa que se esteja utilizando.
Aes:
possvel realizar aes com os arquivos encontrados. Isso muito til quando necessrio realizar uma
determinada operao com todos os arquivos do sistema que tenham determinadas caractersticas.
As principais aes que podem ser executados so:
-exec [comando] [prefixo]{}[sufixo] \;: Executa o comando nos arquivos encontrados. O comando
pode ser qualquer programa do sistema. Os caracteres {} so substitudos pelo nome do arquivo
encontrado. [prefixo] e [sufixo] so opcionais;
-ok [comando] [prefixo]{}[sufixo] \;: O mesmo que -exec, mas pergunta para o usurio antes de

25 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

executar o comando em cada arquivo.


WHEREIS

Localiza o executvel, arquivo/diretrio de configurao, diretrios de bibliotecas, arquivos compartilhados,


cdigo-fonte e caminho da pgina de manual do programa especificado.
Sintaxe:
$ whereis [opes] [programa]

Opes:
-b: Procura apenas pelo executvel do programa;
-m: Procura apenas pela pginas de manual;
-s: Procura apenas pelo diretrio do cdigo-fonte;
-u: Procura no diretrio atual por arquivos que no possuam alguma das entradas informadas.
Exemplos de uso:
Para ver a localizao dos arquivos e diretrios do GIMP, utilizamos o whereis da seguinte forma:
$ whereis gimp

gimp: /usr/bin/gimp /etc/gimp /usr/lib/gimp /usr/share/gimp /usr/share/man/man1/gimp.1.gz


Onde:
/usr/bin/gimp: Executvel;
/etc/gimp: Diretrio contendo os arquivos de configurao;
/usr/lib/gimp: Diretrio contendo as bibliotecas;
/usr/share/gimp: Diretrio contendo os arquivos compartilhados;
/usr/share/man/man1/gimp.1.gz: Localizao da pgina de manual.
Para saber apenas a localizao da pgina de manual, utilizamos a opo -m:
$ whereis -m gimp

gimp: /usr/share/man/man1/gimp.1.gz

26 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

WHICH

Exibe o caminho completo para o comando selecionado.


Sintaxe:
$ which [comando]

Exemplos de uso:
Para sabermos o caminho completo para comando grep, usamos:
$ which grep

/bin/grep
UNAME

Mostra o nome e a verso do kernel em uso.


Sintaxe:
$ uname [opes]

Opes:
-a: Exibe todas as informaes;
-s: Exibe apenas o nome do kernel;
-n: Exibe apenas o nome da mquina na rede;
-r: Exibe apenas a srie do kernel;
-v: Exibe apenas a verso do kernel;
-m: Exibe apenas a arquitetura de hardware;
-o: Exibe apenas o nome do sistema operacional.
Exemplos de uso:

27 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

$ uname -a

Linux bozo-athlon 2.6.8-2-k7 #1 Mon Jan 24 03:29:52 EST 2005 i686 GNU/Linux
(http://www.vivaolinux.com.br/linux/)

ADMINISTRAO DO SISTEMA

28 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

FUSER

Esse programa utilizado para descobrir quais processos esto utilizando determinados arquivos ou
soquetes.
Sintaxe:
$ fuser [-a/-s/-c] [-4/-6] [-n [espao]] [-k [-i] [-[sinal]] ] [-muvf]

Parmetros:
-a: Mostra todos os arquivos especificados na linha de comando. Por padro, somente os arquivos
que esto sendo usados por pelo menos um processo so mostrados;
-s: Modo silencioso;
-c: O mesmo que -m, usado para compatilidade com o padro POSIX;
-4: Procura apenas por sockets de IPv4;
-6: Procura apenas por sockets de IPv6;
-n [espao]: Especifica o espao de nomes a usar. Pode ser:
file: o modo padro, procura por arquivos;
udp: procura por portas UDP;
tcp: Procura por portas TCP:
-k: Matar os processos que esto acessando o arquivo;
-i: Pergunta antes de matar o processo;
-[sinal]: Informa qual o sinal deve ser usado para matar os processos. S pode ser usado junto com
o parmetro -k;
-m: Utilize quando estiver se referindo ao um sistema de arquivos montado ou a um dispositivo de
blocos montado;
-u: Exibe o nome do usurio que iniciou o processo que est utilizando o arquivo;
-v: Modo detalhado, com diversas informaes sobre os processos.
Exemplos de uso:
Uma utilidade grande desse programa a seguinte: suponhamos que voc queria desmontar o disquete, e
seja surpreendido por uma mensagem de erro, dizendo que o dispositivo de disquete est ocupado:

29 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

$ umount /dev/fd0

umount: /media/floppy0: device is busy


umount: /media/floppy0: device is busy
Se voc no conseguir descobrir qual o processo que est "travando" o disquete, voc pode fazer isso
utilizando o fuser. Voc precisar ser o administrador do sistema.
# fuser -m /dev/fd0

/dev/fd0: 2877
Agora, voc pode matar o processo:
# kill 2877

Ou, se quiser, pode matar o comando automaticamente com o fuser:


# fuser -m -k /dev/fd0

Se o processo no for encerrado, utilize o sinal -9 para destrui-lo:


# fuser -m -k -9 /dev/fd0

Repare que, nesse caso, utilizamos -m porque se trata de um dispositivo de blocos, /dev/fd0. Se fosse um
arquivo comum, esse parmetro no seria usado.
Outro uso que pode ser usado por administrador de rede procurar por processos que estejam utilizando
determinadas portas. Por exemplo, pra saber qual o processo que est utilizando a porta TCP 445,
utilizamos:
# fuser -n tcp 445

445/tcp: 2674
DF

Mostra o espao utilizado de cada partio.


Sintaxe:

30 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

$ df [opo] [partio]

Opes:
-a: Inclui na verificao os sistemas de arquivos com 0 blocos;
-B [tamanho]: Usa blocos do tamanho especificado;
-h: Exibe os tamanhos num formato de fcil compreenso (1K, 23M, 2G);
-H: Igual ao -h, mas usa mltiplos de 1000 ao invs de 1024;
-i: Mostra as informaes dos inodes;
-k: O mesmo que -B 1K;
-l: S exibe informaes dos sistemas de arquivos locais;
-P: Usa o formato de sada POSIX;
--sync: Executa o sync antes de obter as informaes;
-t [tipo]: S mostra informaes dos sistemas de arquivos do tipo especificado;
-T: Mostra qual o tipo do sistema de arquivos de cada partio exibida;
-x [tipo]: Mostra todos os tipos de sistemas de arquivos exceto o tipo especificado aqui.
Exemplos de uso:
Um exemplo simples:
$ df -h

Sist. Arq.
/dev/hda2
tmpfs
/dev
none
/dev/hda1

Tam Usad Disp Uso%


4,9G 3,1G 1,9G 63%
59M 0
59M 0%
4,9G 3,1G 1,9G 63%
5,0M 744K 4,3M 15%
32G 5,4G 27G 17%

Montado em
/
/dev/shm
/.dev
/dev
/mnt/windows

DU

Esse comando, sigla de disk usage (uso de disco), usado para estimar o espao em disco usado pelos
arquivos. Em outras palavras, usamos o para saber o tamanho dos arquivos.
du

Sintaxe:
$ du [opes] [arquivo] Opes:

31 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-a: Exibe o tamanho de todos os arquivos dentro dos subdiretrios do diretrio especificado, e no
somente dos arquivos imediatamente dentro do diretrio;
--aparent-size: Exibe o tamanho aparente, que pode ser maior ou menor que o tamanho real,
dependendo de fatores com fragmentao, blocos indiretos e similares;
-B [tamanho]: Exibe o tamanho dos arquivos em blocos do tamanho especificado;
-b: Igual a -B 1;
-c: Exibe uma linha com o tamanho total de todos os arquivos contabilizados;
-D: Quando usado para links simblicos, considera o local para onde o link aponta e no o link em si.
S considera arquivos;
-h: Mostra os tamanhos de forma comprensvel (2K, 32M, 1G);
-H: O mesmo que -h, mas usa blocos de 1000 ao invs de 1024;
-k: O mesmo que -B 1K;
-L: O mesmo que -D, mas considera qualquer tipo de arquivo;
-S: No mostra o tamanho dos subdiretrios;
-s: Mostra apenas o tamanho total de cada item (arquivo ou diretrio);
-x: Ignora arquivos que estejam em outro sistema de arquivos;
-X [padro]: No contabiliza os arquivos que correspondam ao padro informado;
-m: O mesmo que -B 1M.
Suponha que voc esteja no diretrio /home/davidson/, que contenha os seguintes arquivos e diretrios:
$ ls

arquivo de teste Desktop exe iso


src tmp
deb
doc img playlist.m3u teste
Se quisermos ver o tamanho do arquivo playlist.m3u:
$ du playlist.m3u

playlist.m3u

O tamanho exibido em KB. No caso, o arquivo tem 8 KB.


Se quisermos ver o tamanho do diretrio img/:
$ du img

32 de 45

img/davidson

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

0
img/wallpapers
592 img/diagramacao
484 img/partition_magic
461 img/qtparted
1132 img/programacao_visual
4018 img
Veja que o tamanho em KB no muito confortvel. Usamos o parmetro -h para que os valores sejam
exibidos de uma forma compreensvel:
$ du -h img

0
img/davidson
0
img/wallpapers
592K img/diagramacao
484K img/partition_magic
461K img/qtparted
1,2M img/programacao_visual
4,0M img
Podemos tambm querer que sejam contabilizados os arquivos dos subdiretrios img/davidson/ e
img/wallpapers/. Nesse caso, usamo o parmetros -a:
$ du -h -a img

673K img/bozo.bmp
44K img/bozo.zip
0
img/davidson
0
img/wallpapers
16K img/davidson_80x60.png
52K img/davidson_cabeludo.jpg
172K img/diagramacao/linux_magazine_distribuicoes.pdf
136K img/diagramacao/linux_magazine_segurando_desktop.pdf
284K img/diagramacao/linux_magazine_jogos.pdf
592K img/diagramacao
28K img/partition_magic/Thumbs.db
84K img/partition_magic/pqmagic001.jpg
92K img/partition_magic/pqmagic002.jpg
28K img/partition_magic/pqmagic003.jpg
96K img/partition_magic/pqmagic004.jpg
28K img/partition_magic/pqmagic005.jpg
33 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

100K
28K
484K
565K
16K
20K
16K
12K
12K
12K
32K
40K
32K
24K
28K
48K
16K
16K
52K
16K
16K
20K
16K
16K
461K
280K
284K
272K
28K
268K
1,2M
4,0M

http://www.vivaolinux.com.br/artigos/impressora...

img/partition_magic/pqmagic006.jpg
img/partition_magic/pqmagic007.jpg
img/partition_magic
img/kacique01 .jpg
img/qtparted/snapshot01.png
img/qtparted/snapshot04.png
img/qtparted/snapshot10.png
img/qtparted/snapshot11.png
img/qtparted/snapshot12.png
img/qtparted/snapshot13.png
img/qtparted/qtparted001.jpg
img/qtparted/qtparted002.jpg
img/qtparted/qtparted003.jpg
img/qtparted/qtparted004.jpg
img/qtparted/qtparted005.jpg
img/qtparted/snapshot1.png
img/qtparted/snapshot2.png
img/qtparted/snapshot3.png
img/qtparted/snapshot4.png
img/qtparted/snapshot5.png
img/qtparted/snapshot6.png
img/qtparted/snapshot7.png
img/qtparted/snapshot8.png
img/qtparted/snapshot9.png
img/qtparted
img/programacao_visual/ferrari001.png
img/programacao_visual/ferrari002.png
img/programacao_visual/ferrari003.png
img/programacao_visual/Thumbs.db
img/programacao_visual/tux.png
img/programacao_visual
img

Essa lista ficou bem extensa. Se quisermos exibir somente o tamanho total de cada diretrio, retiramos o
parmetro -a, acrescentamos o parmetro -s, e nos referenciamos a img/* ao invs de img:
$ du -h -s img/*

673K img/bozo.bmp
44K img/bozo.zip
34 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

0
img/davidson
16K img/davidson_80x60.png
52K img/davidson_cabeludo.jpg
592K img/diagramacao
565K img/kacique01 .jpg
484K img/partition_magic
1,2M img/programacao_visual
461K img/qtparted
0
img/wallpapers
Dessa ltima forma, porm, o tamanho total do diretrio no foi informado. Para isso, basta acrescentar o
parmetro -c:
$ du -h -s -c img/*

673K img/bozo.bmp
44K img/bozo.zip
0
img/davidson
16K img/davidson_80x60.png
52K img/davidson_cabeludo.jpg
592K img/diagramacao
565K img/kacique01 .jpg
484K img/partition_magic
1,2M img/programacao_visual
461K img/qtparted
0
img/wallpapers
4,0M total
FREE

Comando muito utilizado para anlise do desempenho do sistema, o free exibe informaes sobre o uso de
memria pelo computador.
Sintaxe:
$ free [-b / -k / -m] [-o] [-s delay ] [-t]

Parmetros:

35 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

-b: Exibe as quantidades em bytes;


-k: Exibe as quantidades em kilobytes;
-m: Exibe as quantidades em megabytes;
-o: No exibe a linha -/+ buffers/cache;
-s [tempo]: Especifica o intervalo de tempo, em segundos, entre as atualizaes das informaes.
Se esse parmetro no for usado, exibida apenas uma informao. Se usado, vai exibindo as
informaes indefinidamente no intervalo de tempo definido, at que o usurio pressione CTRL + C;
-t: Exibe uma linha com os valores totais;
Vejamos o uso mais comum do free:
$ free

total
used
free shared buffers cached
Mem:
118880 116508
2372
0
2432 38216
-/+ buffers/cache: 75860 43020
Swap:
514040 127604 386436
Aqui temos as seguintes informaes:
Memria RAM total: 118880 KB
Memria RAM usada: 116508 KB
Memria RAM livre: 43020 KB
Informaes em buffer: 2432 KB
Informaes em cache: 38216 KB
Memria swap total: 514040 KB
Memria swap usada: 127604 KB
Memria swap livre: 386436 KB
Buffers/Cache usados: 75860 KB
Buffers/Cache livres: 43020 KB
A exibio em KB pode no ser muito confortvel. Se quiser que os tamanhos sejam exibidos em MB, utilize
o parmetro -m:
$ free -m

total
used
free shared buffers
Mem:
116
114
1
0
2
-/+ buffers/cache:
71
44

36 de 45

cached
40

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

Swap:

501

124

http://www.vivaolinux.com.br/artigos/impressora...

377

TIME

Esse um comando muito til para medir o desempenho do sistema. Com o time podemos medir o tempo,
em segundos, necessrios para executar um processo ou programa.
Sintaxe:
$ time [opes] [comando]

Opes:
-o [arquivo]: Grava as estatsticas coletadas durante a execuo do comando para o arquivo
especificado, para anlise posterior;
-a: Quando usado junto com o parmetro -o, no apaga o contedo do arquivo ao gravar as
estatsticas;
-v: Exibe os detalhes da execuo do comando.
Assim, suponha que voc tenha um script de backup, e queira saber quanto tempo ele demora para ser
executado:
$ time backup

real 0m39.054s
user 0m28.560s
sys 0m0.689s
O campo real nos mostra quanto tempo o processo demorou para ser executado. No caso, 39,054
segundos. O campo user informa quanto tempo a CPU gastou processando apenas os dados do comando.
Nesse exemplo, 28,560 segundos. O campo sys informa qual o intervalo mdia de espera da CPU entre
cada ciclo de processamento dos dados do comando. Aqui, o tempo foi de 0,689 segundos.
UPTIME

Mostra o perodo em que o sistema permaneceu em processamento desde que foi ligado.

37 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

Uso:
$ uptime

O uptime no possui parmetros. Basta digitar uptime no terminal. Veja um exemplo:


$ uptime

16:40:18 up 7:48, 3 users, load average: 0.43, 0.29, 0.26


Aqui, vemos que o computador esteve ligado por 16:40 horas, mas s esteve em processamento durante
7:48 horas. Durante esse perodo, 3 usurios acessaram o sistema, e a carga mdia do sistema, que vai de 0
a 1, foi de 0,43 no ltimo 1 minuto, 0,29 nos ltimos 5 minutos e 0,26 nos ltimos 15 minutos.
DMESG

Esse comando utilizado para ver as mensagens de inicializao do sistema. til para analisar eventuais
mensagens de erro exibidas devido a qualquer problema que esteja ocorrendo durante a inicializao.
Sintaxe:
Como as mensagens so muito extensas, utilize o more ou o less para visualizar as informaes:
$ dmesg | more
$ dmesg | less

ECHO

Exibe mensagens na tela. Esse comando utilizado principalmente para a construo de scripts de sistema.
Sintaxe:
$ echo [opes] [cadeia de caracteres]

Opes:
-n: No insere uma nova linha;
-e: Ativa a interpretao de caracteres de escape, listados a seguir:

38 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

\NNN: Cdigo ASCII octal do caracter;


\\: Barra invertida (\);
\a: Alerta sonoro (beep);
\b: Backspace;
\c: No exibe a linha de final de arquivo;
\f: Alimentao de formulrio (form feed);
\n: Nova linha;
\r: Retorno de carro (carriage return);
\t: Tabulao horizontal;
\v: Tabulao vertical.
Exemplos de uso:
$ echo "Projeto Bozolinux"

Projeto Bozolinux
$ echo -e "Primeira linha\nSegunda linha\n\tTerceira linha com tabulao horizontal"

Primeira linha
Segunda linha
Terceira linha com tabulao horizontal
Com o uso de direcionadores, pode-se usar o echo para inserir texto em arquivos, com a seguinte sintaxe:
$ echo [mensagem] [> / >>] [arquivo]

Onde > apaga o contedo o arquivo, se existir, e >> adiciona o texto no final do arquivo.
Exemplos de uso:
$ echo -n > /etc/modules

Apaga o contedo do arquivo /etc/modules.


$ echo -e "192.168.0.35\tdavidson.bozolinux.org\tdavidson" >> /etc/hosts

Adiciona a seguinte linha no arquivo /etc/hosts:

39 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

192.168.0.35

http://www.vivaolinux.com.br/artigos/impressora...

davidson.bozolinux.org davidson

SU

Esse comando utilizado para um usurio assumir os privilgios de outro usurio do sistema.
Sintaxe:
$ su [opes] [usurio]

A digitar o comando necessrio digitar a senha do usurio selecionado. Se nenhum usurio for
especificado, o sistema entende que o usurio quer assumir os privilgios de administrador do sistema
(root).
Uma opo muito til o parmetro -c, que permite executar um comando especfico com os privilgios do
usurio selecionado, e ao trmino da execuo perder esses privilgios.
Exemplos de uso:
Um exemplo a compilao de um pacote. O comando make install, que faz a instalao propriamente dita
do pacote, s pode ser executado pelo usurio root. Assim, temos que fazer o seguinte:
$ su

password:
# make install
# exit

Ao invs disso, podemos simplesmente digitar:


$ su -c "make install"

password:
O comando ser executado e, ao seu trmino, perdemos os privilgios de administrador de sistema.
SYNC

40 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

Esse comando utilizado para gravar os dados armazenados em cache nos locais apropriados. O uso mais
comum para gravar os dados em unidades de disco removvel, geralmente disquete.
Uso:
O

sync

no possui parmetros. Para us-lo, execute:

$ sync

REBOOT

Reinicia o computador. Por padro, somente o root pode executar esse comando.
Sintaxe:
# reboot

SHUTDOWN

Usado para desligar o sistema. Por padro, somente o root pode executar o shutdown.
Sintaxe:
# shutdown [opes] [hora] [mensagem de alerta]

Opes:
-t [tempo]: Espera o tempo especificado (em segundos) entre matar os processos e mudar de nvel
de execuo;
-k: No desliga o sistema, apenas envia a mensagem de alerta a todos os usurios que esto
conectados;
-r: Reinicia o sistema aps o desligamento;
-h: Desliga o computador;
-f: No roda o utilitrio fsck no caso de reiniciar o sistema;
-F: Fora o uso do fsck no reincio do sistema;
-c: Cancela um processo de desligamento que esteja sendo executado no momento.

41 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

Em [hora] voc pode especificar o horrio exato para o sistema desligar, como 12:34, por exemplo, ou
ento utilizar +[n], para desligar o sistema daqui a [n] minutos. Para desligar o sistema imediatamente, use +0
ou a palavra now.
A mensagem de alerta ser enviada a todos os usurios conectados ao sistema, para que eles tenham tempo
de salvar seus arquivos e se desconectarem.
Exemplos de uso:
O uso mais comum do shutdown para desligar o sistema o computador imediatamente:
# shutdown -h now

UTILITRIOS DE TERMINAL

42 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

CLEAR

Limpa a tela do terminal.


Uso:
$ clear

HISTORY

O comando
(histrico) mostra a lista dos ltimos comandos executados pelo usurio corrente. Isso
til quando h a necessidade de executar um comando extenso, com muitos parmetros, do qual no
consigamos nos lembrar, ou para fazer auditoria.
history

Sintaxe:
$ history [opes]

Exemplos de uso:
$ history

462
463
464
465
466
467
468
469
470
471
472
473
474
475
476

43 de 45

su
cd tmp
cd giFT
clear
ls
mv creed_-_inside_us_all.ogg /home/audio
xmms -e /home/audio/creed_-_inside_us_all.ogg
clear
ls
mv 04\ -\ Say\ I.ogg creed_-_say_i.ogg
clear
ls
mv Creed\ -\ Weathered.mp3 creed_-_weathered.mp3
clear
ls

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

http://www.vivaolinux.com.br/artigos/impressora...

477 mv Luciana\ Mello\ -\ Assim\ Que\ Se\ Faz.mp3 luciana_mello_-_assim_


que_se_faz.mp3
478 clear
479 ls
480 normalize-ogg --bitrate 192 creed_-_say_i.ogg
481 mv creed_-_say_i.ogg /home/audio/
482 xmms -e /home/audio/creed_-_say_i.ogg
483 clear
484 ls
485 normalize-mp3 --ogg --bitrate 192 creed_-_weathered.mp3
486 mv creed_-_weathered.ogg /home/audio
487 xmms -e /home/audio/creed_-_weathered.ogg
488 clear
489 ls
490 mv avalon\ -\ the\ creed\ -\ renew\ me.mp3 avalon_-_the_creed.mp3
491 clear
492 ls
493 normalize-mp3 --ogg --bitrate 192 luciana_mello_-_assim_que_se_faz.m
p3
494 clear
495 ls
496 mv luciana_mello_-_assim_que_se_faz.ogg /home/audio
497 xmms -e /home/audio/luciana_mello_-_assim_que_se_faz.ogg
498 su
499 giftd -d
500 giFTcurs
501 cd
502 clera
503 ls
504 clear
505 ls
506 apt-cache search java | more
507 su
508 giftd -d
509 ls dire || echo "O diretrio no existe"
510 ls dire &> /dev/null || echo "O diretrio no existe"
511 clear
512 ls
513 mv deb exe iso src download/
44 de 45

02-05-2015 09:59

Fundamentos do sistema Linux - comandos do Lin...

514
515
516
517
518
519
520
521
522

http://www.vivaolinux.com.br/artigos/impressora...

clear
ls
su
clear
history
history | more
cd /tmp
clear
history | tee log

Para executar novamente o comando apt-cache search java | more, basta anotar o seu nmero, e dar o
comando:
$ !506

Para procurar um determinado comando, use o history em conjunto com o grep. Vamos, por exemplo,
procurar pelo comando normalize, pra ver quais parmetros devemos usar:
$ history | grep normalize

480
485
493
p3
503

normalize-ogg --bitrate 192 creed_-_say_i.ogg


normalize-mp3 --ogg --bitrate 192 creed_-_weathered.mp3
normalize-mp3 --ogg --bitrate 192 luciana_mello_-_assim_que_se_faz.m
history | grep normalize

Agora, podemos ver os parmetros que usamos anteriormente.


Existem outros mtodos de utilizao do history, que podem ser vistos na sua pgina de manual:
$ man history

Voltar (verArtigo.php?codigo=5024)

45 de 45

02-05-2015 09:59

Potrebbero piacerti anche