Смущает этот скрипт бомбы-вилки [duplicate]

command - это башизм . Поскольку вы указываете строку shebang, вы не должны указывать оболочку в вашем crontab; это просто сбивает с толку. Вы должны сделать одно или другое - я очень предпочитаю строчку shebang, потому что вы явно указываете следующий синтаксис, а не притворяетесь «универсальным» сценарием оболочки.

Да, и убедитесь, что вы делаете свой скрипт исполняемым и помещаете только /path/to/your/script.sh в поле команды crontab, не sh /path/to/your/script.sh, sh /to/your/script.sh или даже . /path/to/your/script.sh. Последние три игнорируют строку shebang и вместо этого запускают сценарий в контексте оболочки cron, какой бы она ни была настроена.

См. инструкции по перенаправлению для получения дополнительной информации о сохранении вывода скрипта в файл.

3
07.09.2016, 15:58
1 ответ

В современных версиях Linux, если вы запустите этот код в bash, это не приведет к сбою вашей системы. Он использует системный вызов fork. '& 'из вашего fucntion означает, что он выполняется в фоновом режиме, и когда он пытается это сделать, он использует системный вызов fork (). Он будет разветвляться так много раз, что вилка будет недоступна, поэтому вы не сможете запускать новые приложения , потому что это тоже необходимо для разветвления, но приложения, которые у вас уже запущены, будут в порядке.

0
27.01.2020, 21:38

Теги

Похожие вопросы