Cc L Cc L - 6 months ago 59
Python Question

Shell Script: execute & repeat a python program that needs extra input

I have to run this python command:

python manage.py rebuild_index
at a certain time and rerun again. Therefore, I am trying the shell script to run it. However, when run this python command, I have to choose
y
to continue.

enter image description here

my run_rebuild.sh:

#!/bin/sh
python manage.py rebuild_index


Moreover, how can I let the
run_rebuild.sh
rerun again after every 60 seconds?

Answer

You can use yes for this:

yes | python /manage.py rebuild_index

One way to run your script every minute:

while yes | python /manage.py rebuild_index; do
  sleep 60
done

The above will run your script every 60 second until it fails.