removido
(usa Nenhuma)
Enviado em 08/08/2017 - 13:34h
Você pode passar os comandos que está usando nos scripts, que eu te ajudo a colocá-los todos num só.
Basicamente, consiste em criar funções: (...)
#!/bin/bash
command="$1"
liga()
{
comando que liga
exit 0
}
desliga()
{
comando que desliga
exit 0
}
hiberna()
{
comando que hiberna
exit 0
}
suspende()
{
comando que suspende
exit 0
}
case "$command" in
liga) liga; ;;
desliga) desliga; ;;
hiberna) hiberna; ;;
suspende) suspende; ;;
*) exit 1 ;;
esac
(...) Ou, de maneira mais enxuta (fica mais difícil de implementar recursos extras no futuro - porém, melhor se você não pretende modificar o script):
#!/bin/bash
command="$1"
case "$command" in
liga) comando que liga ; exit 0 ;;
desliga) comando que desliga ; exit 0 ;;
hiberna) comando que hiberna ; exit 0 ;;
suspende) comando que suspende ; exit 0 ;;
*) exit 1 ;;
esac
(nos dois scripts só precisa alterar o que está em itálico)
E então, nos Dockapps, é só chamar o script com os parâmetros reconhecidos (liga, desliga, hiberna e suspende); no exemplo acima, chamar o script com um "
script hiberna" faria o script entender que você quer hibernar o computador.
Os dockapps, então, ficariam assim:
xterm -e
script liga
xterm -e
script desliga
xterm -e
script hiberna
xterm -e
script suspende
Trocando
script pelo nome do seu script (e acrescentando sua localização, no caso dele não estar em algum diretório do $PATH) e o nome dos parâmetros (liga, desliga, hiberna e suspende) pelos nomes que foram usados no script (não é necessário fazer isso caso decida deixar da forma como fiz nestes exemplos).