Konwersja napisów pod bashem

Ostatnio szukałem rozwiązania konwersji napisów z formatu txt do srt i chociaż Gaupol jest rewelacyjnym program do tego celu to jednak pozwala na konwersję pojedyńczych plików. Ja potrzebowałem  *.txt 😉

Szybko znalazłem ciekawy programik (skrypt) o nazwie Subotage (polskiego autora), który pozwala na konwersję pod terminalem.

Plik ściągamy i instalujemy podobnie jak przy Napi czyli:

sudo cp subotage.sh /usr/local/bin/
sudo chmod 777 /usr/local/bin/subotage.sh

Uruchomienie jest bardzo proste:

subotage.sh -i plik_wejsciowy.txt -o plik_wyjsciowy.srt

Niestety autor nie zaimplementował jeszcze tzw. wildcard’ów (wieloznaczników jak podpowiada wiki) czyli nie można użyć * do konwersji np. wszystkich plików w katalogu.

Niemniej to już żaden problem, wystarczy przejść do katalogu z napisami wywowałać:

for i in $(ls *.txt); do
subotage.sh -i $i -o `basename $i .txt`.srt
done

1 komentarz

  1. Odpowiedz

    Proponują tą pętle z ostatniego akapitu trochę poprawić, bo ma kłopoty ze spacjami:

    for i in *.txt; do
    subotage.sh -i "$i" -o "`basename "$i" .txt`.srt"
    done

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.