Procurando um padrão num arquivo
Publicado por Sandro Marcell 02/08/2007
[ Hits: 5.628 ]
Homepage: http://sanmarcell.wordpress.com
Simples script que procura a ocorrência de determinado padrão num arquivo.
Ele retorna o número total de linhas do arquivo, a quantidade de ocorrências do padrão e ainda mostra em quais linhas o padrão ocorre.
#!/bin/sh # # Descobrindo posição dum padrão num arquivo. # # Sandro Marcell (sandro_marcell@yahoo.com.br) # # Uso: nome_script [padrão] arquivo # Onde: # padrão = a palavra que se procura. # arquivo = onde procurar o padrão. # # Sobre o uso do Sed # # sed -n '$=' arquivo # Conta a quantidade linhas do arquivo. # # sed -n "/padrão/=" arquivo # Procura o padrão no arquivo e retorna o número da linha em que ele ocorre. # # (1) sed ':A ; $!N ; s/\n/ /g ; tA ; (2) s/ /,/g' # 1 = Ordena-se a numeração das linhas encontradas na horizontal; # 2 = Acrescenta-se vírgulas. # # sed : # Emulando o comando cat. # Checando parâmetros: [ $# -le 1 ] || [ $# -gt 2 ] && echo "Uso: $0 [padrão] arquivo" && exit # Testes condicionais: [ ! -e $2 ] && echo "-> Arquivo não encontrado." && exit [ ! -r $2 ] && echo "-> Sem permissão de visualização." && exit # O padrão é a variável $1 e o arquivo é $2: PDR=$(sed -n "/$1/=" $2 | sed ':A ; $!N ; s/\n/ /g ; tA ; s/ /,/g') # Checando se o padrão existe no arquivo: [ "$PDR" = "" ] && echo "[$1] padrão não encontrado em: $2" && exit # Resultado na tela: sed : << FIM $2: possui $(sed -n '$=' $2) linhas. $(sed -n "/$1/=" $2 | wc -w) ocorrência(s) do padrão [$1] em $2 Há ocorrência(s) do padrão na(s) seguinte(s) linha(s): $PDR FIM # Fim
Script para automatizar OpenVpn
Criação de usuario / gerando senha automatica
PDC Samba + LDAP no Debian Lenny
Go Script - Inicia sessões ssh
Nenhum comentário foi encontrado.
WhatsApp com Chamadas no Linux via Waydroid
XFCE - quase um Gnome ou Plasma mas muito mais leve
LXQT - funcional para máquinas pererecas e usuários menos exigentes
DOOM Carniceiro: rode o Meatgrinder com uzdoom (Gentoo e Ubuntu)
Samba 4 AD-DC 2026: Como instalar e configurar um Active Directory (via APT-GET)
[Resolvido] Sumiço de redes e micro quedas no iwd/iwgtk (Realtek rtw88)
Como Configurar DNS Reverso (PTR) em Ambientes Linux e Microsoft









