Busca de arquivos nas ports FreeBSD
Publicado por Perfil removido (última atualização em 30/12/2009)
[ Hits: 6.365 ]
Faz uma busca do arquivo desejado, trazendo uma hierarquia de resultados "Recomendável", "Semelhantes" e "Outros resultados"
O diretório ports padrão do FreeBSD fica em "/usr/ports", caso seu sistema adote outros padrões de diretórios, altere a variável "PORTS" encontrada no início do script.
Requerimentos:
- permissão de escrita no diretório "~/", caso não tenha altere a variável "LOG" no início do script
#!/usr/local/bin/bash # ----------------------------------------------------------------------- # - Feito por: Douglas Giorgio Fim - # - E-mail: dgf_skt@hotmail.com - # - MSN: dgf_skt@hotmail.com - # - Programa: dgfbuscaports - # - Versao: 1.0 Stable - # - - # - Este script pode ser alterado e distribuido por qualquer pessoa, - # - desde que este quadro se mantenha inalterado! - # - - # - Obs.: Este script foi desenvolvido para buscar os programas nas ports com hierarquia - # ----------------------------------------------------------------------- PORTS=/usr/ports # altere essas variavel para o diretorio ports LOG=~/tmp/DGF rm -rf "$LOG" # remove os logs anteriores mkdir -p "$LOG" touch "$LOG/busca" touch "$LOG/semelhante" echo -n 'Escolha um aplicativo: '; read aplicativo # declara valor a variavel find /usr/ports -type d -iname "*$aplicativo*" >> "$LOG/busca" # procura o aplicarivo e redireciona ao log DIR=$PORTS/*/$aplicativo DIR2=$PORTS/*/$aplicativo* clear echo "Recomendavel:" for nome in `cat $LOG/busca`; do if [ $DIR = $nome ]; then recomendavel=$nome grep -v "^$recomendavel$" "$LOG/busca" > "$LOG/busca.new" mv $LOG/busca.new $LOG/busca echo "$recomendavel" fi done echo echo "Semelhantes:" echo "$DIR2" > $LOG/semelhante for num in `wc -w $LOG/semelhante | tr -d ^[a-z][A-Z]" ".\/\\\,\;\_\-` ; do for i in `cat $LOG/semelhante | cut -f$num -d" "`; do for nome2 in `cat $LOG/busca`; do if [ $i = "$nome2" ]; then semelhantes=$nome2 grep -v "^$semelhantes$" "$LOG/busca" > "$LOG/busca.new" mv $LOG/busca.new $LOG/busca echo $semelhantes fi done done done echo echo "Outros resultados:" nome3=`cat $LOG/busca` echo "$nome3" rm -rf "$LOG" # remove os logs
zsh: Sattolo's Random Cyclic Permutation
Como aprovar Pull Requests em seu repositório Github via linha de comando
Como gerar um podcast a partir de um livro em PDF
Automatizando digitação de códigos 2FA no browser
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Organizando seus PDF com o Zotero
Erro no realm join [Resolvido]
Um programa para baixar vídeos: Parabolic
Como Definir o Painel Principal em Múltiplos Monitores no Linux Mint
tentando instalar em um notebook antigo o Linux LegacyOS_2023... (7)
BlueMail não abre no Kubuntu 25.04 (1)
Driver de rede realtek 8821ce bugado (8)