Ошибка Python при выполнении s3cmd в скрипте bash

Я создаю bash-скрипт, который будет работать на cron, его целью является резервное копирование каталога в Amazon S3 с помощью s3cmd команда.

Я получаю следующую ошибку при запуске скрипта:

/usr/bin/env: python: Not a directory

Когда я закомментирую s3cmd Команда Python ошибка исчезает. Когда я запускаю эту команду в терминале, она работает как обычно.

Для тех, кто интересуется, вот мой сценарий bash:

#!/bin/bash

# clutching at straws here
# export PATH=/usr/bin/python:$PATH

# get the start time
START_TIME=$SECONDS

# set the log file output
NOW=$(date +"%m-%d-%Y")
FILE="domain_s3_$NOW.log"
PATH="/var/www/domain/log.domain.co/$FILE"
URL="http://log.domain.co/$FILE"

# fire the s3cmd sync command
/usr/local/bin/s3cmd/s3cmd sync --exclude-from /root/.s3cmd-exclude /var/www/ s3://domain-backup-latest/ > $PATH

ELAPSED_TIME=$(($SECONDS - $START_TIME))

# output diagnostic information
echo "Backup information:"
echo "- Duration: $(($ELAPSED_TIME/60)) min $(($ELAPSED_TIME%60)) sec"
echo "- Log: $URL"

редактировать

В этом связанном вопросе я заметил, что скрипт Python имеет другое объявление в верхней части файла, я думаю, мне нужно что-то вроде этого, но я действительно хорошо знаком со сценариями bash на данном этапе.

1 ответ

Решение

Понял, я настраивал $PATH переменная, должно было знать, что это было слишком общим, часть s3cmd сценарий (или зависимости) должен использовать это.

Урок выучен.

Другие вопросы по тегам