Назад | Перейти на главную страницу

Эхо-переменная - аналогично, другой вывод

Я написал сценарий оболочки со следующим содержанием:

#!/bin/bash
value=`cat test.txt`

echo "Output: $value" >> currentOutput.txt

Выполняя этот сценарий в оболочке, он правильно записывает значение в currentOutput.txt. При выполнении этого сценария поверх / etc / crontab файл заполняется только «Output:».

Пользователь, выполняющий оболочку и crontab, является пользователем root. Также владелец «currentOutput.txt», «test.txt» и скрипта - root. Мне просто интересно узнать о разном выводе между обычным выполнением и выполнением crontab.

Это моя запись в crontab:

*/5 * * * * root /bin/sh /var/www/testscript.sh

Какие-либо предложения?

попробуйте использовать абсолютный путь к test.txt, маловероятно, что crontab использует тот же локальный каталог, что и вы, когда вы выполняете скрипт, и этот файл может не существовать.

Рабочий каталог, скорее всего, не тот каталог, в котором хранится ваш файл (например, /var/www). Попробуйте указать полный путь для test.txt.

Вы всегда должны быть как можно более конкретными в заданиях cron, поскольку вся среда сильно отличается от вашей обычной среды оболочки.