Este documento apresenta vários comandos básicos do shell script para manipular arquivos e diretórios, trabalhar com textos, pesquisar arquivos e obter informações sobre o sistema. Os comandos incluem cd, ls, cp, rm, grep, find, df, du, free e date. Exemplos de uso são fornecidos para ajudar na compreensão dos comandos.
O Uso de Captchas de Áudio no Combate ao spam em Telefonia IPFrederico Madeira
Apresentação da Dissertação de Mestrado - Realizada em 30/08/2011 - UFPE - CIN - 2011.
Tema: O Uso de Captchas de Áudio no Combate ao spam em Telefonia IP
3. Comandos – Manipular Arquivos
ls
Função: Listar arquivos e diretórios
Opções Úteis: -a(arquivos ocultos), -l(formato Longo) , -s(exibe o tamanho dos
arquivos), -h (tamanho em K, MB, GB), -R (recursivo)
touch
Função: Criar arquivos e modifica o timestamp
cp
Função: Copiar Arquivos
Opções Úteis: -p(preserve mode), -r (recursive), -v (verbose)
mv
Função: Mover arquivos e pastas
Opções Úteis: -f (force, sem confirm), -v (verbose)
4. Comandos – Manipular Arquivos
rm
Função: Remover arquivos/diretórios
Opções: -R/r (recursivo), -f (force), - v (verbose)
mkdir
Função: Criação de diretórios
Opções: -p(parent), múltiplos argumentos
ln
Função: Criação de links entre arquivos (Atalhos)
Opções: -s (symlink)
HardLink: Não usado para diretórios nem para diferentes FS
Symlink: ok para todos
file
Função: Retorna o tipo do arquivo que estamos trabalhando
5. Manipular Arquivos - Prática
1. Entrar no diretório home do usuário
2. Dentro do seu diretório home, criar uma pasta com o nome de sua turma
(TRC2NA OU TRC2NB), em seguida entre nela
3. Criar as pasta teste1 teste2 e teste3 (no mesmo comando)
4. Criar as pastas subteste1 dentro de teste1
5. Mover a pasta subteste1 para a pasta teste2
6. Remover a pasta subteste1
7. Copiar o arquivo .bash_profile (em seu home dir) para a pasta de sua turma
(criada no passo 2) com o nome .bash_profile_copia, em seguida visualize o
conteúdo do arquivo .bash_profile_copia (usar o cat)
8. Adicionar o conteúdo do arquivo .bash_profile_copia no arquivo profile.txt (no
mesmo dir, usando o comando cat)
6. Comandos – Trabalhando com Textos
cat
Função: Concatenação de arquivos ou exibição na saída padrão
Opções: -n (numera linhas)
tac
Função: Concatenação de arquivos ou exibição na saída padrão
head
Função: Imprime as 10 primeiras linhas do arquivo na saida padrão
Opções: -n (quantas linhas serão exibidas)
tail
Função: Envia para saída padrão a ultima parte do arquivo (10 linhas)
Opções: -f (update), -n (quantas linhas serão exibidas)
7. Comandos – Trabalhando com Textos
more
Função: paginação de arquivos
less
Função: paginação de arquivos, permite mais controle do que o more
grep
Função: Exibe linhas de acordo com pesquisa
Opções: -i (ignora o caso)
Sort
Função: ordena uma texto
Opções: -n(ordem numérica), -r(ordem reversa), -d(ordem do dicionário)
Cut
Função: corta um pedaço do texto
Opções: -c(caractere), -f(field/campo), -d(delimitador)
8. Trabalhando com Textos - Prática
1. Exibir o conteúdo do arquivo /etc/services usando os comandos:
cat + more
cat + less
2. Procurar pela número da porta usada pelo serviço de pop3, smtp, www,
whoami, rsync e https no arquivo /etc/services (Utilize cat e grep)
3. Criar um link simbólico entre o arquivo /etc/services e a pasta de sua turma
criada no passo 2 da atividade anterior
4. Informe apenas a porta/protocolo dos serviços pop3, smtp, www, whoami,
rsync e https no arquivo /etc/services (Utilize cat, grep, head, tail, cut)
5. Informe apenas o IP da interface eth0(Utilize head, tail, cut)
9. Comandos – Pesquisa por arquivos
Find
Função: pesquisa por arquivos ou diretórios no sistema de arquivos
Opções: -name, -type f, -exec, -size
Ex: find / -type f -exec ls -all ’{}’ ;
find / -size -100M -exec ls -allh '{}' ;
Whereis
Função: Localização de binários, sources e man pages
Which
Função: Exibe o caminho completo do comando
locate
Função: localização de arquivos no disco baseado em BD gerado
updatedb
Função: atualizar o banco de dados usado pelo locate
10. Comandos – Sobre o sistema
df
Função: Mostra o espaço utilizado para cada partição
Opções: -h (mostra mais arredondado)
du
Função: Exibe o espaço em disco utilizado pelos arquivos
Opções: -c(total), -h(human readable), -s(sumarize)
free
Função: Informações sobre uso da memória
Opções: -m
11. Comandos – Sobre o sistema
ps
Função: Informações sobre os processos do sistema
Opções: aux
uname
Função: Mostra informações sobre o sistema
Opções: -a (tudo), -n (hostname), -k (kernel), -m (arquitetura), -o (sistema
operacional)
date
Função: Apresenta data e hora do sistema
Opções: -s (ajusta a data/hora), +(formata a saída do comando)
Ex: date +"%Y %m %d" => 2011 08 22
date +"Recife, %d de %B de %Y" => Recife, 22 de agosto de 2011
12. Pesquisa por arquivos/Sobre o sistema -
Prática
1. Procurar arquivos com mais de 10 Mb no diretório home do usuário
2. Verificar a quantidade de espaço disponível nas partições do sistema
3. Verificar o espaço em disco utilizado pelo seu diretório home
4. Verificar qual é a memória disponível do sistema
5. Procurar por todos os arquivos que contem password no nome (usando locate)
6. Qual o caminho dos seguintes binários ? Eles possuem paginas de manual ?
Use o (Which e whereis)
shutdown
reboot
cat
Ls
7. Formate a saída da data conforme exemplo:
dd/mm/aaaa