So I finally figured out this problem after much frustration. The issue is that busybox does not pass the arguments to the filebot shell script in a manner in which they can be parsed correctly. You have to write out the full thing in order for it to work correctly.
ie:
Code: Select all
filebot -script fn:watcher -rename /volume1/video/tmp/ --output /volume1/video/ --format "TV_SHOWS/{n}/Season {s}/{n}.{s00e00}.{t}" --db TheTVDB
will break because there is a space between Season and {s} and it will parse them as separate arguments and no amount of backslashes, single or double quotes, etc will get it to work. (Why replacing a space with a ? when you run filebot -rename somehow works, I have no idea. That definitely doesn't work for the format argument unfortunately.)
This will work:
Code: Select all
java -jar /usr/local/filebot/filebot.jar -script fn:watcher -rename /volume1/video/tmp/ --output /volume1/video/ --format "TV_SHOWS/{n}/Season {s}/{n}.{s00e00}.{t}" --db TheTVDB
Personally, I just made this its own shell script.
-!-VERY IMPORTANT NOTE ON RUNNING FILEBOT ON A SYNOLOGY DISKSTATION-!-
Make sure your working directory when you run a filebot script is located on /volume1 or any HDD volume. Filebot seems to store a cache folder and a history.xml file in the working directory it is run from and, for my diskstation at least (DS211), you do not want it writing to any directory on the flash as this is very slow and over time can burn out your flash. I think it may be possible to set what directory filebot puts these files in at the cmd line or maybe a config file. I'm going to look into that.
Hope this helps!