web-dev-qa-db-fra.com

BASH Script pour exécuter une commande pour de nombreux fichiers

J'ai juste essayé d'effacer mes trucs vidéo de vacances et de trouver un programme pour StibiliZng Vision. Il y a beaucoup de fichiers, donc j'ai fait de script pour stabiliser tous. Tout d'abord, je dois exécuter la commande:

transcode -J stabilize --mplayer_probe -i DSCNXXX.MOV

J'ai écrit un script pour cela, mais cela ne fonctionne pas car la stabilisation finie après le premier fichier. Je veux dire le premier fichier est fait, puis il ne passe pas à la seconde. Le script ressemble à:

for file in /media/Przenośny/transcdoe/*
do
transcode -J stabilize --mplayer_probe -i "$file" >> results.out
done

Sa valeur à ajouter, lorsque j'annulerai l'opération avec le script CTRL + C se déplace automatiquement au prochain clip et ainsi de suite.

1
amonowy

Essayez avec la commande de la recherche:

find /media/Przenośny/transcode/* -exec transcode -J stabilize --mplayer_probe -i {} \;

Je dois attendre ~ 1min après ce message pour voir le fichier suivant à transcoder:

[decoder.c] cancelling the import threads 0:01:24,  ( 4, 9| 0, 0| 6, 1)

Redirection avec >> est inutile car tous les journaux vont à stardr et sont assez verbeux (1 par cadre)

4
Sylvain Pineau