Selenium Filechooser IE9 выпуск

Важно понимать «login shell» и «интерактивная оболочка», что они означают.

  • login shell: коротко, когда вы входите в сеанс ssh и получаете окно терминала, где вы могут вводить команды оболочки. После входа в систему система выполняет некоторые файлы (.bashrc) и задает для вас переменные среды, такие как переменная PATH.
  • интерактивная оболочка: после входа в систему вы можете запускать вручную терминалы (ы) оболочки. Система выполняет некоторый файл профиля, назначенный вашей учетной записи (.bash_profile, .bash_login, .profile). Эти файлы также устанавливают некоторые переменные среды и инициализируют переменную PATH для вашего открытого сеанса оболочки.

С помощью ОС начались сценарии оболочки, а задания cron не соответствуют указанному выше способу для запуска оболочки. Поэтому никаких системных сценариев (.bashrc) или профилей пользователей не выполняется. Это означает, что наша переменная PATH не инициализируется. Команды оболочки не могли найти, потому что переменная PATH не указывает на нужные места.

Это объясняет, почему ваш скрипт работает успешно, если вы запускаете его вручную, но не удается, когда вы запускаете его через crontab.

Решение-1: Используйте абсолютный путь для каждой команды оболочки вместо имени команды, используемой в вашем файле сценария.

  • вместо «awk» использовать " / usr / bin / awk "
  • вместо« sed »использовать« / bin / sed »

Решение-2: Инициализировать переменные среды и особенно переменную PATH до выполнение сценариев оболочки!

0
задан HissingSid 18 January 2019 в 16:08
поделиться