Сценарий Bash действует по-разному в зависимости от того, что его выполняет

У меня есть скрипт bash, который действует как пост-процессный скрипт для utorrent-сервера, который передает переменные на носитель, переименованный в FileBot.

Автор сценария:

#!/bin/bash
TORRENT_NAME=$1
TORRENT_PATH=$2
TORRENT_LABEL=$3
TORRENT_KIND=$4
TORRENT_TITLE=$5

/usr/share/filebot/bin/filebot.sh -script fn:amc --output "/mnt/Storage/" \
   --log-file "amc.log" --action move --conflict override -non-strict \
   --def music=n subtitles=en artwork=n xbmc="192.168.0.123" deleteAfterExtract=y \
     clean=y "ut_dir=$TORRENT_PATH" "ut_file=$TORRENT_NAME" "ut_kind=$TORRENT_KIND" \
    "ut_title=$TORRENT_TITLE" "ut_label=$TORRENT_LABEL" "ut_state=5" "seriesFormat=TV \
    Shows/{n}/Season {s.pad(2)}/{n} - {s00e00} - {t}" "movieFormat=Movies/{n} ({y})/{n} ({y})" \
 &>> /home/xbmc/run.log

Если я запускаю этот скрипт вручную, он работает как задумано, однако когда uTorrent выполняет его, он возвращает "Нет такого файла или каталога". через stderr. У меня изначально был uTorrent, вызывающий этот скрипт напрямую, но у меня была та же проблема.

Кто-нибудь знает, что может быть причиной этого?

ОБНОВЛЕНИЕ (Разрешения для всех каталогов / папок):

drwxr-xr-x   3 root root 4096 Nov 27 23:52 /home  
drwxr-xr-x  20 xbmc xbmc 4096 Dec 15 21:46 /home/xbmc  
drwxr-xr-x  10 root root 4096 Oct 17 06:51 /usr  
drwxr-xr-x 218 root root 4096 Dec 13 15:32 /usr/share  
drwxr-xr-x   3 root root 4096 Dec 15 15:55 /usr/share/filebot  
drwxr-xr-x   2 root root 4096 Dec 15 18:56 /usr/share/filebot/bin  
-rwxr-xr-x 1 xbmc xbmc 615 Dec 15 21:44 /home/xbmc/run.sh  
-rwxr-xr-x 1 root root 552 Dec 15 18:56 /usr/share/filebot/bin/filebot.sh  

2 ответа

Изменить текущий рабочий каталог.

ЕСЛИ filebot.sh это не такой файл, я предлагаю вам попробовать это:

    chmod -R a+x /usr/share/filebot/bin/filebot.sh

ЕСЛИ это твой run.sh,

    chmod -R a+x /home/xbmc/run.sh

Вы можете попробовать запустить filebot.sh от имени владельца. Я думаю, что стоит попробовать.

    chown YOURUSERNAME /usr/share/filebot/bin/filebot.sh
    chmod u+s /usr/share/filebot/bin/filebot.sh
Другие вопросы по тегам