Я пытаюсь выполнить две команды linux в фоновом режиме одним вызовом php exec ().
Моя первая команда создает резервные копии некоторых файлов:
cp -r ../source ../destination
Вторая команда создает файл "DONE.txt" после завершения резервного копирования:
touch ../destination/DONE.txt
Более того, я использую базув php manual и используйте следующий фоновый вызов exec ():
exec('bash -c "exec nohup setsid '.$twoCommands.' > /dev/null 2>&1 &"');
Весь код ниже:
exec('bash -c "exec nohup setsid { cp -r ../source ../destination && touch ../destination/DONE.txt; } > /dev/null 2>&1 &"');
И ... это не работает :) Но почему?
Если я использую только одну команду:
exec('bash -c "exec nohup setsid cp -r ../source ../destination > /dev/null 2>&1 &"');
Хорошо работает:)