plaspkg lite
Publicado por Reinaldo Marques de Lima 25/10/2005
[ Hits: 5.561 ]
Homepage: http://plasticossj4.wordpress.com
uma outra versão do programa "plaspkg" que ao inves de abrir um menu as opções são selecionadas diretamente da linha de comando...
#! /bin/bash ############################################################## # # # plaspkg_lite wrote by Reinaldo Marques de Lima (Plastico) # # criação iniciada em: 10/2005 # # concluido em: em curso # # ultima atualização: 24/10/2005 # # descrição: # # pacote de scripts para automatizar a execução de programas # # roda aplicativos de uma lista, inclui e exclui aplicativos # # da lista,mostra o conteudo da lista e mata processos que # # estejam travados. # # # ############################################################## # # # A mesma versão do pacote 'plaspkg' sem a opção de menu, # # ao inves disto aceita opções diretamente da linha de # # comando. # # # ############################################################## # primeira parte, ajuda do programa #-------------------------------------------------------- if [ $# -lt 1 ]; then echo echo " Parametro invalido: " echo " Para ajuda digite plaspkg_lite.bsh --help" echo elif [ $1 = --help ]; then echo echo " *********** Ajuda do programa 'plaspkp_lite' ********** " echo " * * " echo " * Programa criado para automatizar a execução de * " echo " * aplicativos (xmms, amsn, firefox, etc...) primeiro * " echo " * alimente uma lista com os nomes dos programas, * " echo " * depois execute um script para iniciar estes * " echo " * programas, você pode também ver o contaudo da lista * " echo " * e manipula-la adicionando e removendo alguns nomes * " echo " * desta lista ou ainda você pode finaliza um * " echo " * determinado processo. * " echo " * As opções são: * " echo " * * " echo " * 1 (plassee) Para ver o conteudo da lista. * " echo " * 2 (plasadd) Para adicionar nomes a lista. * " echo " * 3 (plasall) Para iniciar os Programas da lista. * " echo " * 4 (plasrm) Para removar nomes da lista. * " echo " * 5 (plaskill) Para 'Matar' os Programas ou outro * " echo " * processo qualquer. * " echo " * * " echo " * Escolha uma das opções. * " echo " * * " echo " * execute 'plaspkg_lite.bsh [opção desejada]' * " echo " * * " echo " ******************************************************* " echo else OPCAO=$1 fi funcao.OPCAO() { case $OPCAO in 1) plassee; ;; 2) plasadd; ;; 3) plasall; ;; 4) plasrm; ;; 5) plaskill; ;; esac } # plassee: opção 1 #---------------------------------------------------------- # mostra na tela as ocorrencias contidas em 'plasall.txt' #---------------------------------------------------------- plassee() { echo echo " *** Opção 1 ( plassee ) ***" MOSTRA=`cat plasall.txt` echo echo " O conteudo da Lista é:" echo for i in ${MOSTRA[*]}; do echo $i done echo unset MOSTRA } # plasadd: opção 2 #---------------------------------------------------------- # alimenta uma lista de aplicativo para serem iniciados #---------------------------------------------------------- plasadd() { echo echo " *** Opção 2 ( plasadd ) ***" echo echo " Digite os nomes dos programas: " read PROGRAMAS ARQUIVO="plasall.txt" for i in ${PROGRAMAS}; do if ! grep -w ${i} $plaspkg_lite.bsh > /dev/null; then echo ${i} >> $ARQUIVO echo " '$i' cadastrado em 'plasall.txt'." else echo " Argumento '$i' já existe na lista." fi done unset PROGRAMAS unset ARQUIVO } # plasall: opção 3 #---------------------------------------------------------- # executa tudo que estiver listado em 'plasall.txt' #---------------------------------------------------------- plasall() { LISTA=`cat plasall.txt` for i in ${LISTA}; do if [ `ps -ef|grep $i | wc -l` -gt 1 ]; then echo "Aplivativo $i ja está em execução." else echo "iniciando aplicativo $i" $i & fi done echo "Fim da Lista de execução, digite ENTER para sair." exit unset LISTA } # plasrm: opção 4 #---------------------------------------------------------- # retira um nome de aplicativo da lista em 'plasall.txt' #---------------------------------------------------------- plasrm() { echo echo " *** Opção 4 ( plasrm ) ***" echo echo " Digite o programa que será removido da lista:" read PROGRAMA ARQUIVO="plasall.txt" TESTE=`grep $PROGRAMA plasall.txt` if [ ! $TESTE ]; then echo echo " Argumento $PROGRAMA não existe na lista" echo else sed "/$PROGRAMA/d" $ARQUIVO > .tmp cat .tmp > $ARQUIVO rm -f .tmp echo echo " O argumento $PROGRAMA foi removido da lista" echo fi unset ARQUIVO unset PROGRAMA unset TESTE } # plaskill: opção 5 #---------------------------------------------------------- # mata processos buscando o PID #---------------------------------------------------------- plaskill() { KILL="/bin/kill" echo echo " *** Opção 5 ( plaskill ) ***" echo echo " Digite o nome do processo que voce quer matar: " read APLICATIVO1 echo echo " Voce quer matar mais algum processo? (s/n) " read RESPOSTA if [ $RESPOSTA != "s" ] && [ $RESPOSTA != "n" ]; then echo echo " ERRO: escolha somente (s) ou (n)" echo fi if [ $RESPOSTA = s ]; then echo echo " digite: " read APLICATIVO2 PROCESSO=($APLICATIVO1 $APLICATIVO2) else PROCESSO=($APLICATIVO1) fi for i in ${PROCESSO[*]}; do if [ $i = X ]; then echo echo " ts ts, fazendo caca!!!" echo elif [ `ps -ef|grep $i | wc -l` -lt 2 ]; then echo echo " aplicativo não esta rodando ou nome esta errado " echo else JOB=`ps -ef|grep $i | awk {'print $2'} | head -1` $KILL $JOB echo echo "O processo $JOB referente ao aplicativo $i foi fin alizado" echo fi done unset KILL unset JOB unset PROCESSO } funcao.OPCAO
Coleta de Performance com SAR (systat package)
xpock-dl: baixe vídeos do xpock.com.br (v20071030)
Script Iniciador do PostgreSQL
Instalador do MPlayer e mais algumas coisas
Nenhum comentário foi encontrado.
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Instalar debian testing (13) "por cima" do debian 12 (2)
firefox nao guarda meus logins nos sites (0)
Erro de segmentação «Segmentation fault (core dumped)» ao retornar obj... (1)