매번 끝나는 곳에서 for 루프를 시작합니다.

매번 끝나는 곳에서 for 루프를 시작합니다.

내 디렉토리에는 약 1백만 개의 이미지가 있습니다. 파일에는 1부터 n까지 번호가 매겨져 있습니다. 각 이미지를 반복하기 위해 for 루프를 사용하고 있습니다. 각 반복은 개인이 검토하므로 하루에 특정 횟수의 반복만 완료할 수 있습니다. 다음 날 루프를 다시 시작하면 루프는 분명히 첫 번째 파일부터 다시 시작됩니다.

루프 반복을 텍스트 파일에 저장하고 각 루프가 시작되기 전에 텍스트 파일의 마지막 줄을 읽습니다. 마지막으로 읽은 파일을 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

관련 정보