How can I see/stop current running crontab tasks?

Firstly, use only one command per line in crontab. Change this crontab line:

00 10 * * * /usr/bin/wget LINK ; shutdown -h now

so it looks like:

00 10 * * * /path/to/my/crontab/script1.sh

and create /path/to/my/crontab/script1.sh with this content:

#!/bin/bash
/usr/bin/wget LINK
shutdown -h now

Of course, don't forget to give it execution permission:

chmod +x /path/to/my/crontab/script1.sh

Secondly, you can see running crontab tasks, in a useful and readable format, in the output of:

ps -o pid,sess,cmd afx | egrep -A20 "( |/)cron( -f)?$"

They will appear in the first lines, something like this:

1108  1108 cron
4288  1108 \_ CRON
4289  4289     \_ /bin/sh -c /path/to/my/crontab/script1.sh
4290  4289         \_ /bin/bash /path/to/my/crontab/script1.sh
4295  4289             \_ /usr/bin/wget LINK

First column is PID, second is Session ID and third is the command started by cron. You can kill all the processes related to a specific cron task using the Session ID, so in the example above you should kill Session ID 4289:

pkill -s 4289

Tags:

Wget

Cron