find 출력에서 ​​여러 bash 명령 실행

find 출력에서 ​​여러 bash 명령 실행

find -exec 옵션을 사용하여 일부 명령을 실행하고 싶지만 이 코드에 어떤 문제가 있는지 잘 모르겠습니다. 현재는 첫 번째 찾기 결과만 처리한 다음 중단됩니다. 저는 OS X에서 bash를 사용하고 있습니다.

read -e DIRECTORY

find $DIRECTORY -type f -name '*.mov' -exec sh -c '
  file="$0"
  echo "Processing $file ..."
  modmovie -notrack "Timecode Track" $file -save-in-place
  read line </dev/tty
' {} \;

답변1

제가 이 예를 생각해낸 이유는 다른 사람들이 댓글에서 말했듯이 이로 read line </dev/tty인해 사용자 입력을 기다리게 되기 때문입니다.

#!/bin/bash

find db -type f -name '*.jpg' -exec sh -c '
file="$0"
echo "hi"
echo "$file"
read line </dev/tty
' {} \;

내 스크립트의 출력

hi
db/db1440/gothamgardenxmas21440.jpg
     <---- I hit enter here
hi
db/db1440/unveiling11440.jpg
     <---- I hit enter here    
hi
db/db1440/astronomer21440.jpg
     <---- I hit enter here
...

관련 정보