我一直在寻找一个自动字幕下载程序,它可以监视特定文件夹中的新文件,我发现了基于python的clisubliminal(如果你不知道这个工具,它真的很棒)。
下一步是每次在指定目录中有新的电影/电视节目时触发它。这就是为什么我选择了incron这是一个不起眼的cron系统。
从那以后,我一直在努力让它发挥作用,但遗憾的是没有任何机会。
以下是我的配置:
允许增加:

root@localhost:/home/marco/Téléchargements# more /etc/incron.allow
marco
root

额头:
root@localhost:/home/marco/Téléchargements# incrontab -e
/home/marco/Téléchargements IN_CREATE,IN_MOVED_TO /home/marco/Téléchargements/series $#

剧本系列:
root@localhost:/home/marco/Téléchargements# more series
#!/bin/bash
logger "argument is "$1
/usr/bin/python /usr/local/bin/subliminal -l en -q -s -- $1

系统日志:
root@localhost:/home/marco/Téléchargements# tail /var/log/syslog
Jan 22 12:10:25 localhost incrond[3140]: (root) CMD (/home/marco/Téléchargements/series the.blacklist.112.hdtv-lol.mp4)
Jan 22 12:10:25 localhost logger: argument is the.blacklist.112.hdtv-lol.mp4

如您所见,incron作业正在按预期执行。这个论点是按要求给出的,但当我检查我的“收费”文件夹时,里面什么都没有。当我使用相同的参数从cli执行脚本时,它会执行任务。
注意,我想可能是因为当前文件夹不是收费文件夹,所以文件不在该文件夹中,但如果我使用潜意识的说明将其移动到好文件夹中,则文件夹中仍然没有任何内容。
注意2,我也试图删除脚本中的-d /path/to/Téléchargements,但它没有改变任何内容。
任何帮助都非常好。
编辑:
我在Debian喘息:
root@localhost:/home/marco/Téléchargements# uname -a
Linux localhost 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux

编辑2:
在一些评论之后,我将cmd路径添加到我的服务脚本中,并将/usr/bin/python删除到-q。以下是系列的新脚本:
   #!/bin/bash
   export PATH=$PATH:/usr/local/sbin:/usr/local/bin
   /usr/local/bin/subliminal -l en -d /tmp --log-file /tmp/log -s -- $1

如果我从cmd运行脚本,它将按预期工作,并且通过读取/tmp/log中的文件可以看到:
  root@localhost:/home/marco/Téléchargements# more  /tmp/log
  2014-01-22 15:06:58,526 INFO: Listing subtitles for <Episode [u'the blacklist', 1x12]>
  2014-01-22 15:07:04,839 INFO: Found 8 subtitles total
  2014-01-22 15:07:04,950 INFO: Downloading subtitle <OpenSubtitlesSubtitle [en]> with score 71
  2014-01-22 15:07:05,885 INFO: Saving <OpenSubtitlesSubtitle [en]> to u'/tmp/the.blacklist.112.hdtv-lol.srt'

如果我运行incron任务,什么都不会发生。也不会有任何/tmp/log文件。

最佳答案

好的,最后用我的用户marco而不是root运行incron任务修复了这个问题。不知道为什么,但它是这样工作的。谢谢你的帮助。
仍然需要转义字符“é”才能将其移动到收费文件夹中。

  marco@localhost:~/WindowsShare/Series$ /bin/ls -ld /tmp /tmp/the.blacklist.112.hdtv-lol.mp4.log /home/marco/WindowsShare/Series/the.blacklist.112.hdtv-lol.mp4
  -rw-r--r--  1 marco marco 269597467 janv. 22 23:13 /home/marco/WindowsShare/Series/the.blacklist.112.hdtv-lol.mp4
  drwxrwxrwt 11 root  root       4096 janv. 22 23:41 /tmp
  -rw-r--r--  1 marco marco       370 janv. 22 23:37 /tmp/the.blacklist.112.hdtv-lol.mp4.log

关于linux - Incron和Subliminial字幕下载器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21290721/

10-12 04:19