Programação automática de acções no Ubuntu 10.04
O Crontab com GUI
O Unix/Linux é um sistema extremamente poderoso no que se refere ao agendamento de tarefas. Tal característica deve-se em grande parte ao serviço Crontab.
Para que não sabe, o crontab permite que tarefas sejam executadas em modo “background” em intervalos regulares pelo deamon da cron. Estas tarefas são normalmente designadas em Unix/Linux por “cron jobs”.
No entanto, o crontab pode ser algo complexo para alguns utilizador. Para isso, apresento-vos o scheduled tasks para Ubuntu.
O scheduled tasks é uma aplicação bastante simples, que permite agendar acções no nosso sistema como por exemplo fazer shutdown ou restart a máquina, executar um determinado script a uma determinada hora, correr uma aplicação a um determinado momento, etc.
Como instalar no Ubuntu 10.04?
Para instalar facilmente o scheduled tasks no Ubuntu, basta abrir o Ubuntu Software Center e procurar por scheduled tasks. Depois basta carregar no botão Install.
Depois de instalado, o scheduled tasks fica disponivel em System Tools-> Scheduled tasks
Assim que abrimos a aplicação, podemos de imediato criar uma acção programa, escolhendo do menu apresentado
Vamos por exemplo definir que o computador deve encerrar a uma determinada hora. Para isso carregamos por exemplo em “A Task that launches one time”, e em seguida definimos a nossa acção. No final basta carregar em Add
A acção ficará agendada, sendo possível a qualquer momento alterar a data/hora/dia em que se irá realizar
Agora é so dar asas a imaginação, e verificar quais as tarefas que pode ir simplificando. Apagar ficheiros, limpar a lixeira, consultar os logs, enviar e-mail, proceder a backups..tudo isto são exemplo de acção que o scheduled tasks pode ajudar a realizar.
Artigos relacionados
Este artigo tem mais de um ano
Cada vez mais vejo os developers a “investir” em ubuntu onde antigamente (e não à tanto tempo quanto isso) era dificil encontrar tanta variedade de programas. Á imenso tempo que andava à procura de um que fizesse exatamente isto e sempre sem sucesso…Vou testar.
Cada vez mais se vê que o mundo do ubuntu não está a parar como muita gente pensa, mas sim a evoluir
cumps
isto ja existe à imenso tempo(diria mesmo desde sempre :O), provavelmente nao tinha era GUI.
nice post!
cumps!
sim exatamente, não tinha GUI e eu tentava configurar e não conseguia…Agora com este é bem mais fácil
cumps
Concordo plenamente! A distro ubuntu fez evoluir bastante o mundo linux…quer se queria quer não!
Já existia um programa destes desde a versão 6.06 penso que se chamava era gnome scheduled.
Ubuntu sempre teve grandes opções mas nem sempre com GUI, que nem sempre é necessário 😀
Wrapper do cron, basicamente. 🙂
Front-end, penso que era mais isto que querias dizer 😛
boas..
assim é mais facil fazer um checkup ao sistema, para ver se tenho rootkits na minha maquina sem andar a unha a executar comandos, espectaculo, tudo aumomatizado.
so uma questão, será que existe algum tipo de aviso grafico que me indique que um determinado processo está a correr?isso era demais, podia funcionar no meu caso e para ja como um anti-rootkits.
boa escolha malta 😛 .
cmps
crontab -l
so precisas disso para ver se tens algo programado.
quanto ao seres avisado se um processo esta a correr nao percebi bem.. querias tipo algo q te avisasse se o processo ‘x’ arrancava?
se sim, é facil.. fazes um scriptzinho com um grep e com um ps -A, de forma a q qd o processo ‘x’ esteja a correr faça ‘notify-send o processo $proc esta a correr’.
cumps!
algo como isto funciona por ex:
#!/bin/bash
out=`ps -A | grep $1`
if [ “$out” != “” ]; then
notify-send ‘Process’ $1′ is running’
fi
chamas o script com o nome do processo q queres ser notificato à frente.
por ex:
$sh script.sh vim
cumps
boas..
o
out=`ps -A | grep $1`
coloca na variavel $1 o output que está a correr na consola será? e depois caso seja != null faz um notify-send??
voces todos são os maiores 😛
Obrigado
cmps
nao é bem 😛
Ao usares $1, $2.. $n o que estas a usar sao as variaveis de input. ou seja $1 corresponde a primeira variavel de input do script. no caso de chamares ‘$sh script.sh vim’ o teu $1 vai ser ‘vim’.
Basicamente o q esta ali é, com o comando ‘ps -A’ dás a listagem completa de processos, e pegas nesse output e metes num pipe.
Depois o grep vai ao pipe e procura pela string $1. se encontrar devolve a(s) linha(s) com essa string.
ou seja, a var out fica ou vazia, ou com linhas.
Se tiver vazia é porque o grep n encontrou o processo, se tiver algo, é porque o encontrou.
No caso de ter encontrado usa o notify-send q te notificará atraves do lib-notify que o processo esta a correr. podes alterar o testo da mensagem do notify-send caso queiras outra coisa;)
scripting é uma coisa fantastica.. da para fazer de tudo mesmo e de forma taaao simples!:D
cumps!
boas..
tenho que aprender bash e rapido :p
Obrigado pela dica
cmps
#!/bin/bash
pgrep — “$1” >&2 >/dev/null && \
notify-send “Process ‘$1’ is running”
##
Fiquem Bem!
‘A frente do fgrep estao dois -, mas parece que sao convertidos para um unico simbolo.
Nao conhecia o comando notify-send. Obrigado!
Para instala-lo no Ubuntu:
sudo apt-get install libnotify-bin
Fiquem Bem!