dep-info - verificar se o programa está instalado no sistema

Publicado por Jefferson Rocha (última atualização em 02/03/2018)

[ Hits: 875 ]

Homepage: https://slackjeff.com.br

Download dep-info




Programa feito em shell-bash para verificar se o programa está instalado no sistema, ou não.

Modo de uso:

Dê permissão de execução:

$ chmod +x dep-info

Rode em linha de comando:

$ ./dep-info firefox

ou:

$ ./dep-info firefox dialog google-chrome

Saída:

$ ./dep-info firefox dialog google-chrome leafpad mousepad
    firefox......[OK]
    dialog......[OK]
    google-chrome......[NO]
    leafpad......[NO]
    mousepad......[NO]

  



Esconder código-fonte

#!/usr/bin/env bash
# NÃO UTRAPASSE O '|'
#-------HEADER---------------------------------------------------------------------|
#AUTOR
#   Jefferson Rocha <lrcjefferson@gmail.com>
#
#HOMEPAGE
#   https://slackjeff.github.io/
#
#PROGRAMA
#   dep-info
#
#DESCRIÇÃO
#   Verificar se o programa existe no sistema.
#
#PARA MAIS PROGRAMAS COMO ESTE
#   https://notabug.org/jeffersonrocha
#----------------------------------------------------------------------------------|

# Colors
end="\033[m"
green="\033[32;1m"
red="\033[31;1m"

# Conferindo se existe no sistema.
while :; do
  for i in $1; do
      if ! type -P $i >/dev/null; then
          echo -e "$i......${red}[NO]${end}"
      else
          echo -e "$i......${green}[OK]${end}"
      fi        
  done
  # Se é a entrada é nula para, se não rebaixa e continua.
  if [[ -z "$1" ]]; then
      break
  else
      shift
  fi         
done # fecha while

Scripts recomendados

Script Basico para Tunnel Broker

Alta disponibilidade IP-Virtual

GNU - que bacana

abelhudo

DownloadVideo


  

Comentários
[1] Comentário enviado por raserafim em 10/03/2018 - 18:50h

para quais sistemas (distribuições) este script serve?

testei no Slackware e funcionou!

[2] Comentário enviado por raserafim em 10/03/2018 - 18:59h

não consegui entender a lógica do teste (if ! type -P $i >/dev/null; then)

Isto é, não consegui entender como o "type -P" consegue ajudar a saber se um determinado pacote está instalado..

[3] Comentário enviado por slackjeff em 10/03/2018 - 19:54h

@raserafim, Sobre o type, faz a mesma coisa que o comando which, ele tente localizar no path do sistema o determinado programa que você passou.
Poderia usar o which porem funciona apenas no bash e algumas derivações, se for fazer algo mais portável é interessante usar o type com o parâmetro -p...
Utilizei ele por questão de mania, mas poderia usar simplesmente o which no lugar!

# which firefox
# which google-chrome-stable


[b]THE MAGIC SHELL PROGRAMMER.[/b]
[code]
Slackware user since ~2008
[b]Meu canal no youtube: [/b]
https://www.youtube.com/SlackJeff

[b]Meu Site:[/b]
[b]http://www.slackjeff.com.br/[/b]

[b]Meus Programas estão aqui:[/b]
https://notabug.org/jeffersonrocha

[b]Meu PODCAST:[/b]
http://podcast.slackjeff.com.br/
[/code]




[4] Comentário enviado por raserafim em 12/03/2018 - 15:30h

interessante...!

não conhecia essas possibilidades.

valeu pelas explicações.

obrigado!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts