나는 (inotifywait으로) 폴더를보고 프로세스를 실행한다 (다른 여러 서버에 정보를 보내고 데이터베이스를 업데이트하는 PHP 스크립트를 만들었지 만 그럴 생각은 없다고 생각합니다.) 관련성있는) 새로운 파일이 생성 될 때.자동으로 백그라운드 쉘 스크립트 종료
제 문제는 스크립트가 실제로 종료 된 후 왜 (PHP 실행을 위해 버퍼를 채우지 않는 파일로 출력을 리디렉션했는지) 이해가 안된다는 것입니다.
저는 우분투 12.04 서버와 최신 버전의 PHP를 사용하고 있습니다.
여기 내 스크립트입니다 : 시간, 시간이 나는 마침내 해결책을 발견 한 후
#!/bin/sh
#get the script directory
SCRIPT=$(readlink -f "$0")
script_path=$(dirname "$SCRIPT")
for f in `ls "$script_path"/data/`
do
php myscript.php "$script_path"/data/$f &
done
#watch the directory for file creation
inotifywait -q -m --format %w%f -e create "$script_path"/data/ | while read -r line; do
php myscript.php "$line" &
done
는
은 inotifywait이 종료되어 가장 가능성이 높음 – DevZer0
스크립트를 어떻게 실행하는지 설명해 주시겠습니까? 그것은 cron 직업인가? 세션이 끊어 지거나 사용자가 로그 아웃 한 경우에도 screen/nohup 또는 다른 방법을 사용하여 명령을 실행합니까? – hostmaster
나는 악마를 만들 계획을 가지고 있지만, 잠시 동안 나는 터미널에 의해 실행한다 : './myscript.sh &'. cron 작업이 백그라운드 프로세스를 실행할 수 없다는 것을 알고 있습니다. (이미 시도한 것처럼 ...) – user2515367