我一直在寻找一个自动字幕下载器来监视特定文件夹中的新文件,我发现了基于python的CLI 阈下 (如果你不知道这个工具真的很棒)。下一步是每次在指定目录中有新的电影/电视节目时触发它。这就是为什么我选择文龙,这是一个inotify cron系统。
从那以后,我一直在努力使它发挥作用,不幸的是,根本没有任何机会。这是我的配置:
incron.allow:
root@localhost:/home/marco/Téléchargements# more /etc/incron.allow
marco
rootincrontab:
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 -- $1syslog:
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作业正在按预期执行。这个论点是按需要提出的,但当我检查我的"Téléchargement“文件夹时,里面什么都没有。当我使用相同的参数从CLI执行脚本时,它就完成了任务。
注意,我认为这可能是因为当前文件夹不是Téléchargements,所以文件不在这个文件夹中,但是如果我确实使用潜意识论证将其移到好文件夹-d /path/to/Téléchargements中,那么文件夹中仍然什么都没有。
注2,我也尝试删除脚本中的/usr/bin/python,但是它没有改变任何东西。
任何帮助都会是很棒的。
编辑:我在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路径添加到我的服务脚本中,并且我还将-q移至--log-file。下面是系列的新脚本:
#!/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'如果我执行这个任务,什么都不会发生。也不会有任何/tmp/log文件。
发布于 2014-01-22 21:17:27
最后,通过使用我的用户marco而不是root运行incron任务来修复它。不太明白为什么,但它是这样工作的。谢谢你的帮助。
仍然需要转义字符"é“,才能将其移动到Télé字符文件夹中。
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.loghttps://stackoverflow.com/questions/21290721
复制相似问题