Crie bash scripts "on-the-fly"
Publicado por Fábio Fabris (última atualização em 08/02/2010)
[ Hits: 7.982 ]
Download 1265251759.command_queue.tar.gz (versão 2)
Saudações.
Durante o ciclo edita, compila, testa, tão comum durante o desenvolvimento, é comum ficar digitando sempre as mesmas coisas (ou ficar procurando uma determinada sequência de comandos apertando setinha pra cima...) . Essa sequência de comandos geralmente não é suficientemente grande ou "nobre" para que nós façamos um script completo dela.
Resolvi então criar um gerador "on-the-fly" de bash scripts. Ele funciona assim:
Coloque antes dos seus comandos tradicionais "qcmd -[nome da fila de comandos]" . qcmd é um acrônimo para "Queue Command". Por exemplo:
qcmd -compila cd ~/source/
qcmd -compila make
qcmd -compila valgrind ./bin
qcmd -compila cd -
Se quisermos rodar a fila recém criada basta fazer:
qexc compila
Para editar ou salvar a fila em outro lugar, faça:
qedit exec
Simples assim.
O script segue num tar.gz, basta executar o install.sh para configurar o seu sistema.
Qualquer dúvida, comentário ou correção entrem em contato!
Versão 2 - Enviado por Fábio Fabris em 04/02/2010
Changelog: Problemas de segurança corrigidos.
Download 1265251759.command_queue.tar.gz
############### inicio de qcmd ###############
#!/bin/bash
# Scripted by Fabio Fabris
# This is part of the 0.1 version pack.
#the standard stack
baseDir='/tmp/qcmd'
stackName='default'
command="$@"
# if the first character is a hyphen, consider this a queue name
flag=${1:0:1}
if [ $flag = "-" ]
then
stackName=${1:1}
nameIndex=`expr match "$command" $1`
command=${command:$nameIndex}
fi
eval $command
if ! [ -e $baseDir/$stackName ]
then
if ! [ -d $baseDir ]
then
mkdir $baseDir
fi
echo "#!/bin/bash" >$baseDir/$stackName
chmod +x $baseDir/$stackName
fi
echo $command >> $baseDir/$stackName
############### fim de qcmd ###############
############### incio de qexc ###############
#!/bin/bash
# Scripted by Fabio Fabris
# This is part of the 0.1 version pack.
baseDir="/tmp/qcmd"
stackName="default"
if [ "$1" ]
then
stackName=$1
fi
if [ -e $baseDir/$stackName ]
then
source $baseDir/$stackName
else
echo $stackName does not exists;
fi
############### fim de qexc ###############
############### incio de qedit ###############
#!/bin/bash
# Scripted by Fabio Fabris
# This is part of the 0.1 version pack.
baseDir="/tmp/qcmd"
stackName="default"
if [ "$1" ]
then
stackName=$1
fi
if [ -e "$baseDir/$stackName" ]
then
vim $baseDir/$stackName
else
echo $stackName does not exists;
fi
############### fim de qedit ###############
Balanceamento e Redundância utilizando 2 Links Speedy (ip fixo)
Script para geração de relatórios do sarg
Monta Pen-Drive Windows no Linux
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Programa fora de escala na tela do pc (38)
\Boot sem espaço em disco (Fedora KDE Plasma 42) (1)
Mint Xfce não mantém a conexão no wi-fi (2)









