Powiedzmy, że mam katalog z 5 plikami wideo. Jak mogę zmierzyć całkowity czas trwania wszystkich plików wideo w tym katalogu z terminala. Chcę też móc to robić rekurencyjnie w dowolnych podkatalogach. Nie chcę używać VLC ani żadnych innych narzędzi GUI, ponieważ mam wiele katalogów do wykonania tej akcji i zajmuje mi to dużo czasu.
linux
command-line
video
Orkhan Rutherford
źródło
źródło
exiftool -S -n ./*.mp4 | awk '/^Duration/ {print $2}' | paste -sd+ -| bc
man find
jest Twoim przyjacielem): co-maxdepth
jest, co-exec
jest. Eksperyment. Edytuj pytanie i powiedz nam, czego dokładnie próbowałeś, gdzie utknąłeś. Niewiedza nie jest wstydem, ani nie zawodzi; ale nie próbowanie jest.Odpowiedzi:
Jak zauważono w komentarzach, polecenie z wątku anotehr działa dla jednego katalogu, ale nie dla wielu podkatalogów.
To polecenie użyje polecenia find do pobrania plików ze wszystkich podkatalogów (kończących się na .mp4)
find ./ -name *.mp4 -exec exiftool -S -n {} \;
źródło