Skip to content

Instantly share code, notes, and snippets.

@diogocapela
Last active October 30, 2017 20:04
Show Gist options
  • Save diogocapela/8abf2a6807c70e70dd943b9352a662e4 to your computer and use it in GitHub Desktop.
Save diogocapela/8abf2a6807c70e70dd943b9352a662e4 to your computer and use it in GitHub Desktop.

grep

Todas as linhas que têm um "i" ou um "t"

grep "[it]" memes.txt 

Todas as linhas que começam por um "i" ou um "t"

grep "^[it]" memes.txt 

Todas as linhas que acabam por um "i" ou um "t"

grep "[it]$" memes.txt 

Todas as linhas que não tem nem um "o" nem um "t"

grep -v "[ot]" memes.txt

Todas as linhas que tem um "l" com um caracter qualquer anterior

grep "[.l]" memes.txt

Todas as linhas com "filho da mae" com qualquer numero de espaços entre as palavras (de zero a infinitos)

grep "filho *da *mae" memes.txt

Todas as linhas com "..." usa-se o -E sempre q queremos usar multiplicadores com chavetas ou entao usar o egrep

grep -E "\.{3}" memes.txt
egrep "\.{3}" memes.txt

Todas as linhas com "..." a "....." usa-se o -E sempre q queremos usar multiplicadores com chavetas ou entao usar o egrep

grep -E "\.{3,5}" memes.txt
egrep "\.{3,5}" memes.txt

Todas as linhas que começam com um "i" ou que acabam com um "!"

grep -E "^i|\!$" memes.txt
egrep "^i|\!$" memes.txt

Todas as linhas que começam com um "i" ou um "1" e acabam num "a"

grep -E "^i|^1" memes.txt | grep -E "a$"

find

diferente do ls, ele procura em vez de listar. pode filtar ou procurar através, nao só do nome, mas tambem pelo tipo de ficheiro, pelo dono do ficheiro, permissoes, data da ultima codificao, etc...

Encontra no directório actual e nos subdirectórios todos os ficheiros com o a extensão .txt

find . -name "*.txt"
find . -name "*.pdf"
find . -name "*.pdf" -maxdepth 1 (apenas no directorio)
find . -name "*.pdf" -maxdepth 2 (apenas no directorio e 1 subdirectorios)
find . -name "*.pdf" -maxdepth 3 (apenas no directorio, subdirectorios e sub-sub directorios)


para usar o -exec, precisamos de o \; para indicar que acabou o comando. o {}   é apenas um placeholder

find . -name "*.pdf" -exec cat {} \;


find . -name "*.pdf" -exec echo "### {} ### \; -exec cat {} \;
find . -type f
find . -username capela
find . -perm 700
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment