
Ich möchte einige Befehle mit der Option find -exec ausführen, bin mir aber nicht sicher, was mit diesem Code nicht stimmt. Derzeit verarbeitet er nur das erste Suchergebnis und bleibt dann hängen. Ich verwende Bash in OS X.
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
' {} \;
Antwort1
Mir ist dieses Beispiel eingefallen und wie andere in den Kommentaren gesagt haben, ist es das, read line </dev/tty
was dazu führt, dass auf Benutzereingaben gewartet wird.
#!/bin/bash
find db -type f -name '*.jpg' -exec sh -c '
file="$0"
echo "hi"
echo "$file"
read line </dev/tty
' {} \;
Die Ausgabe meines Skripts
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
...