2017-11-14 11 views
0

5 분마다 텍스트를 인쇄하는 간단한 bash 스크립트를 만들고 싶습니다. 부팅 할 때 스크립트가 시작됩니다.스크립트 bash가 항상 실행 중임

#!/bin/bash 
while true ; do 
echo "You received a new mail" 
sleep 300 
done 

내가이

nohup script.sh 

처럼 nohup을 사용하려고하지만 출력이 nohup.out은로 리디렉션, 내가 원하지 않는 프로세스가 백그라운드에서 실행되지 않습니다, 내가 때까지 일하고있어 CTRL + C

로 남겨

답변

3

쉽게 실행하여 원하는 그러나 stdout/stderr를 리디렉션 할 수 있습니다 :

nohup script.sh > someotherfile. 

nohup 지점은 쉘이 닫힐 때 계속 실행되지만 즉시 백그라운드로 보내지지 않습니다. 당신이 원하는 경우

nohup script.sh > someotherfile & 

당신은 bg 작품 뒤에 & 보통 ctrl-z를 잊어 버린 경우. 쉘/터미널을 닫으면 계속 실행됩니다. 다음은 빠른 자습서입니다. http://linux.101hacks.com/unix/nohup-command/.

다른 옵션을 조회하려면 setsidcrontab을 확인하십시오. 마지막 하나는 실행 및 자동 시작 시점에서 좀 더 유연합니다. 여기에 첫 번째 좋은 참고는 다음과 같습니다

https://askubuntu.com/questions/2368/how-do-i-set-up-a-cron-job#2369

+0

내가 crontab을 더 내가 원하는에 맞게 생각합니다. 명령 줄을 사용하여 작업을 어떻게 계획 할 수 있습니까? crontab에는 간섭 부분이 있기 때문에 – Michael003

+1

정의를 제외하고는 상호 작용이 없습니다. google'crontab'을 사용하면 많은 자습서를 찾을 수 있습니다. 그것을 쫓아 내기 위해'crontab -e'을 치면, 이것은 당신이 작업을 추가 할 수있는 곳인 cron 파일을 열 것입니다 (이것은 영구적입니다). 또한 시작하기위한 설명이 있습니다. 근본적으로 당신은 시간 스펙과 명령을 주면 cron이 시작됩니다! – kabanus