====== Comandos em arquivos ======
===== grep =====
O comando ''grep'' permite procurar strings dentro de arquivos de texto.
Exemplos:
* Procurar todas as linhas contendo "home" no arquivo ''/etc/passwd''
grep home /etc/passwd
* Procurar todas as linhas que **não contenham** a string "home" em ''/etc/passwd''
grep -v home /etc/passwd
===== find =====
O comando ''find'' permite encontrar arquivos que satisfaçam certas características.
Vejamos alguns exemplos de busca:
* Procurar todas as entradas **"*txt"** dentro do diretório /usr:
find /usr -name '*txt' -print
* Procurar todas as entradas *ab* ou *cd* (maíusculas ou minúsculas) presentes em /opt
find /opt -iname '*ab*' -or -iname '*cd*'
* Procurar todas as entradas acessadas a mais de 3 dias em /etc:
find /etc -atime +3
* Procurar todas as entradas modificadas a menos de 2 dias em /etc que tenham mais de 5 Kbytes de tamanho:
find /etc -mtime -2 -and -size +5k
* Procurar todos os diretórios dentro de /opt cujo grupo tenha acesso em escrita:
find /opt -type d -perm +g+w
Para maiores informações sobre as opções disponíveis para esses comandos, consulte as páginas de manual do sistema.
===== cut =====
man cut
===== head & tail =====
man head
man tail
===== sort =====
man sort
===== uniq =====
man uniq
===== diff =====
man diff
===== cat, tac & rev =====
man cat
man tac
man rev
===== wc =====
man wc
===== Exercícios =====
- Crie um arquivo com os dados de exemplo abaixo:
Fred apples 20
Susy oranges 5
Susy oranges 5
Mark watermellons 12
Robert pears 4
Terry oranges 9
Lisa peaches 7
Susy oranges 12
Mark grapes 39
Mark grapes 39
Anne mangoes 7
Greg pineapples 3
Oliver rockmellons 2
Betty limes 14
- Mostre apenas as 4 últimas linhas do arquivo
- Mostre a quantidade de caracteres que o arquivo possui
- Mostre apenas a primeira e última coluna do arquivo
- Ordene os dados pela última coluna (números)
- Crie um arquivo com os mesmos dados separados por ‘,’ (vírgula) e repita os exercícios 4 e 5
- Mostre os dados substituindo Mark por John
- Mostre os dados precedidos de numeração de linhas
- Mostre apenas linhas que não contenham a palavra “mangoes”
- Mostre apenas linhas que contenham as sequências “ea” ou “oe”
- O que faz o comando ''tac''?
- Mostre apenas linhas terminadas com o número ‘2’. Agora tente evitar que a linha terminada em 12 apareça também.
- Use o comando ''find'' para encontrar todos os links simbólicos presentes em ''/usr''.
- O que faz o comando: ''find /usr/share/doc/ -iname html'' ?
- O que faz o comando: ''find /usr/share/doc/ -iname *html'' ?
- Mostre as últimas 15 linhas do arquivo /var/log/dmesg.
- Mostre na tela as 5 primeiras linhas do arquivo /var/log/dmesg.