2014-10-13 5 views
0

파일 state.txt를 검사하는 쉘 스크립트가 있는데 state.txt가 비어 있으면 fit.bin이 삭제됩니다. 나는 오전 2시에 cron을 작성했는데 state.txt의 가치에 관계없이 오전 8 시까 지 스크립트를 중단하고 싶습니다.지정된 시간 후에 쉘 스크립트를 종료하는 방법

#!/usr/bin/ksh 


while true; do 


if [[ -s ~/state.txt ]] ; then 

echo 

else 

rm ~/fit.bin 

exit 

fi ; 


sleep 961 

done 

exit 
+0

은 오전 8시을 실행하는 다른 cronjob를 작성하고이를 중지합니다. – Jayan

+0

961 초마다 오전 2 시부 터 오전 8 시까 지 파일을 루프하고 삭제해야합니다. 961은 임의적입니까? 아니면 또 다른 의미입니까? – NeronLeVelu

답변

1

는 여기에 "모델"입니다 :

#!/bin/bash 

while true 
do 
    NOW=`date '+%H%M'` 
    echo "Time is now: $NOW" 
    sleep 3 
    if [ $NOW -ge 800 ] 
    then 
     echo "Bye bye!" 
     exit 0 
    fi 
done 
0
#!/bin/bash 
while [ $(date '+%H%M') -lt 800 ] 
do 
    [ -s "~/state.txt" ] && rm ~/fit.bin 

    sleep 961 
done 
관련 문제