毎回終了する場所で for ループを開始します。

毎回終了する場所で for ループを開始します。

私のディレクトリには約100万の画像があります。ファイルには1からnまでの番号が付けられています。各画像を繰り返すためにforループを使用しています。各反復は個人によって確認されるため、1日に特定の回数の反復のみを完了できます。翌日、ループを再起動すると、ループは明らかに最初のファイルから再開されます。

ループ反復をテキストファイルに保存し、各ループが開始される前にテキストファイルの最後の行を読みます。最後に読み取ったファイルをforループの先頭として使用しようとしています。

これまでに完成したコードは次のとおりです。

query=/ImageFolder/*.jpg
fil=$( tail -n 1 readfiles.txt )

for f in $query
    do
      python ~/runprog.py --query $f
    done

$filをforループの始点として使用し、そこで後続のファイルを繰り返す方法がわかりません。

ベストアンサー1

処理されたすべてのファイルが含まれている場合は、それを使用して操作が完了したことを確認readfiles.txtできます。grep

Pythonスクリプトを実行した後、処理されたファイルでファイルを更新します。

for f in /ImageFolder/*.jpg; do
   if ! grep -q "$f" readfiles.txt; then 
      python ~/runprog.py --query "$f"
      echo "$f" >> readfiles.txt
   fi
done

おすすめ記事