2

特定のフォルダー内の新しいファイルを監視する自動字幕ダウンローダーをしばらく探していたところ、Python ベースの CLIサブリミナルを見つけました(このツールを知らない場合は、このツールは本当に素晴らしいです)。次のステップは、指定されたディレクトリに新しい映画/テレビ番組があるたびにトリガーすることでした。そのため、inotify cron システムであるincronを選びました。

それ以来、私はそれを機能させようとしてきましたが、悲しいことにまったくチャンスがありませんでした。これが私の構成です:

incron.allow:

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

incrontab:

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 ジョブは期待どおりに実行されています。引数は必要に応じて与えられますが、「Téléchargement」フォルダーを確認すると、中には何もありません。同じ引数を使用して CLI からスクリプトを実行すると、ジョブが実行されます。

現在のフォルダーがTéléchargementsではないため、ファイルがこのフォルダーにない可能性があると思いましたが、サブリミナル引数を使用して適切なフォルダーに移動すると、フォルダー-d /path/to/Téléchargementsにはまだ何もありません。

注2、/usr/bin/pythonスクリプトで削除しようとしましたが、何も変わりません。

どんな助けでも本当に素晴らしいでしょう。

編集: 私はdebian wheezyを使用しています:

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'

incron タスクを実行しても何も起こりません。/tmp/log ファイルもありません。

4

1 に答える 1