Executa vários comandos bash na saída do find

5

Eu quero executar alguns comandos usando a opção find -exec, mas não tenho certeza do que está errado com esse código. Atualmente, ele só processa o primeiro resultado de localização e fica preso. Estou usando o bash no 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
' {} \;
    
por Elliott B 20.04.2013 / 10:56

1 resposta

1

Eu criei este exemplo e, como outros disseram nos comentários, é o read line </dev/tty que está causando a espera pela entrada do usuário.

#!/bin/bash

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

saída do meu script

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
...
    
por 20.04.2013 / 14:52

Tags