0

特定のディレクトリ内で新しく見つかったファイルを最初に編集し、次に incron/python を介してアップロードするスクリプトを作成するにはどうすればよいでしょうか? Pythonスクリプトでファイル名を文字列として指定する方法について少し混乱しています。

incrontab -e :

/var/test IN_CREATE /var/pythoncode/code.py

パイソンコード:

s = open("confused.txt").read()
s = s.replace("string1", "string2")
f = open("confused.txt", 'w')
f.write(s)
f.close()

基本的に、incron サービスに/var/testfolder 内で見つかった新しいファイルを見つけさせ、python コードを実行して、で見つかった新しいファイル内の文字列を探して置換しようとしています/var/test"confused.txt"ただし、で見つかった各ファイルに/var/testは動的な名前が付けられるため、ファイル名文字列にアプローチする方法がわかりません。

4

1 に答える 1

0

あなたがスクリプトに精通していると仮定した場合の回避策は次のとおりです -

ステップ 1 - ディレクトリ内のファイルを変更します (すべてを変更し、$FILE で名前を取得しますls)。

ステップ 2 - 最後のファイル名を変数 $LAST_FILE に保存する

ステップ 3 - WHILE ループを実行して、$LAST_FILE よりも新しいファイルを検索します -

find /var/test/ -newer $LAST_FILE

また

find /var/test/ -type f -newer $LAST_FILE

また

find /var/test/ -type f -iname "*.txt" -newer $LAST_FILE

これにより、最後に編集したファイルよりも新しいファイルが一覧表示されます。したがって、このリストを「ファイル変更」スクリプトに解析します。

于 2014-10-20T22:51:18.627 に答える