Welcome to the Linux Foundation Forum!

cron job execution...

$crontab -e

* * * * * /root/cronJob.sh >> /root/cronJobExecuted.log

Source: cronJob.sh

sh /root/scheduledJob.sh

Source: scheduledJob.sh

One of my web application will keep on insert list of ssh command in my file "scheduledJob.sh" such as

ssh -i key.pem root@ -C sh /mnt/monitor.sh >> /root/Output.txt

ssh -i key.pem root@ -C sh /mnt/monitor.sh >> /root/Output.txt

In remote machine,

Source: monitor.sh

echo `cat /mnt/imageOutput.txt`

Source: imageOutput.txt

line1

line2

As soon as when ssh get executed in scheduledJob.sh, I should not execute it again.

How is should handle this...



Example:


Cronjob has executed 1) ssh -i key.pem root@ -C sh /mnt/monitor.sh >> /root/Output.txt

and 2)ssh -i key.pem root@ -C sh /mnt/monitor.sh >> /root/Output.txt

Again when cronjob trying to execute, it should skip the above 2 ssh command , it should execute only the new command if and only if exist....How i can handle this ?

Comments

  • gomer
    gomer Posts: 158
    Well, clearly, you need either remove the ssh commands as they're being executed in your scripts, or you need to add some other inteligence into your scripts. You could, for example have cronJob.sh check the number of lines in the file scheduledJobs.sh and keep track of that number in some other file somewhere in the file system, and then only execute the number of lines above the last saved number of lines. Or, make the script that puts the lines into scheduledJobs.sh remove old lines.

    before anyone here can give you any more advice, I think you'll have to explain a little more about what exactly it is that you're trying to accomplish and give us a better picture of all the pieces and how they all interact.

Categories

Upcoming Training