Mi stavo chiedendo se qualcuno può aiutarmi a scrivere un semplice script batch che esegue questo comando:
mkvextract *.mkv 2:
Per tutti i file mkv all'interno di una cartella. mkvextract non sembra funzionare con le cartelle o la sintassi * .mkv, quindi ha bisogno del nome completo e della directory del file.
Immagino che lo script debba recuperare queste informazioni ed eseguire il comando per ogni file che si adatta al profilo.
Non so come affrontarlo in Windows, ma ho visto qualcosa del genere per Linux qui: https://gist.github.com/kampfgnu/bb7be04b624ed5ddf65d6e7c54f9ce2e
Come posso farlo con cmd / powershell? Grazie.
FOR %%A IN ("D:\folder\*.mkv") DO mkvpropedit -v "%%~A" -v --edit track:2 --set track-number=3 --edit track:3 --set track-number=2
Il che modifica i numeri di traccia in batch in un file mkv. Grazie ancora. A proposito, dove posso imparare di più su questo linguaggio di scripting dei comandi per Windows?
/?
passa a vedere i dettagli di ogni comando e crea solo piccoli script di test, comandi, ecc. e prova come penso che sia davvero il modo migliore per imparare dopo aver letto le basi vedendo tutto in azione. Ad esempio da riga di comando FOR /?
, o DIR /?
, o qualsiasi <command> /?
FOR %A IN ("C:\Folder\Path\*.mkv") DO mkvextract %~A 2:
da una linea di comando .... una prova ..... questo è semplicemente usando a per loop iterando di conseguenza i file al comando. Se ti serve come script batch, devi raddoppiare i segni percentuali in quanto tali:FOR %%A IN ("C:\Folder\Path\*.mkv") DO mkvextract %%~A 2: