Filtragem de strings no terminal
uniq Este comando remove linhas duplicadas.
Ex
1
2
2
Com uniq 1
2
uniq -c Mostra em número quantas vezes foi repetido uma linha
Ex
alex
alex
cavalo
com uniq -c 2 alex
1 cavalo
sort Coloca na ordem os caracteres ou strings iguais
Ex
a
b
a
b
Com sort a
a
b
b
sort -r Inverte o fim para o inicio
Ex
a
b
c
Com sort -r c
b
a
cut -d" " -fN serve para imprimir somente a string através do número. Os operadores importantes são -d (delimitador) e -f (especificador de campo).
Ex
olá pkg
Com cut -d" " -f2 pkg
cut -d: -f1 /etc/passwd Mostrar somente os usuários
paste Um comando que serve para colar um dado sequêncial em outro arquivo
Ex file1.txt
L
C
B
Ex file2.txt
4
5
7
paste file1.txt file2.txt Ex L 4
C 5
B 7
join Cola o resultado sequêncial a outro arquivo somente se começar com a mesma sequência
Ex file1.txt
900 a
90 a
9 a
Ex file2.txt
900 seq
90 seq
9 seq
join file1.txt file2.txt = 900 a seq
90 a seq
9 a seq
head -n Imprimi até o ultimo número da linha
Ex file.txt
Aka
kja
kaju
head -n 2 Aka
Kja
tail -n O comando tail serve para imprimir as ultimas linhas ou a ultima linha.
O -n é para especificar o número das ultimas linhas que tem que serem imprimidas.
O comando tail por padrão vem ativado para imprimir as dez ultimas linhas por isso tem que se usar -n para especificar.
Ex file.txt
a1
a2
a3
tail -n2 file.txt Ex a2
a3
Ler uma linha especifica usando head e tail
Ex file.txt
1 ab
2 cd
3 e
head -n 2 file.txt | tail -n1 Ex 2 cd
Head vai imprimir até a segunda linha de file.txt e tail vai imprimir somente a ultima linha.
Fazer o grep localizar uma string que começa com um caractere especifico
echo cana | grep [cl]ana Ex cana
echo bana | grep [cl]ana Ex (Não apareceu resultado já que não está especificado o caractere inicial)
grep string filename.txt /dev/null
Para forçar o grep a mostrar o nome do arquivo em apenas um arquivo de destino, forneça /dev/null como segundo arquivo
Ex filename.txt:string
grep -n Mostra em quais linhas tem a string
Ex file.txt
A floresta é maco
A banana é do maco
grep maco -n file.txt
Ex
1:A floresta é maco
2:A banana é do maco
grep -c string filename.txt Mostra em número quantas vezes a string foi repitida
Ex filearq.txt
paçoca
paçoca
paça
grep -c paçoca filename.txt Ex 2
grep -o É para não misturar o resultado do comando anterior com o do grep
Ex sem operador -o
echo paçoca | grep paç Resultado: paçoca
Ex Com o operador -o
echo paçoca | grep -o paç Resultado: paç
O comando look no Linux mostra as linhas que começam com uma determinada string.
Em um arquivo filename.txt
mac
qbito
look qb filename.txt Ex: qbito
look é bastante parecido as funcionalidades com o do grep, mas se não quiser especificar a string para o look pode colocar
no arquivo a string em /usr/dict/words.
tr --squeeze-repeats "caractere" Serve para remover uma sequência repetitiva
echo "BBB" | tr --squeeze-repeats 'B' Ex B
--squeeze-repeats é o mesmo que -s
tr -c string1 string2 Se a string1 for diferente do comando tr substitui pela string2
echo ab | tr -c ab + Ex ab+
echo xxx | tr -c ab + Ex ++++
Pode se usar também um - para especificar que é de uma letra a outra do alfabeto Ex a-d
corresponde a: a b c d
tr "[:alpha:]" Substitui letras por um caracter ou uma string. [:alpha:] é do shell posix que significa todas letras.
echo abc123 | tr "[:alpha:]" ";" Ex ;;;123
echo abc123 | tr "[:alpha]" A Ex
echo "abc123" | tr "[:alpha:]" "0" Ex 000123
[:alpha:] é o mesmo que "[a-zA-Z]"
fmt Junta varias linhas em uma só no modo padrão
Ex filename.txt
oi
olá
fmt filename.txt Ex oi olá
Com fmt pode também dividir uma linha em várias usando -w que define a largura máxima da linha.
Ex filename.txt
folha é verde
fmt -w 4 folha
é
verde
Comentários
Postar um comentário