bat/cmd: Ako uložiť výstup príkazu priamo do premennej?
Napsal: 28 úno 2013 15:05
Poradí niekto, ako by som bez použitia dočasného súboru uložil výstup príkazu priamo do nejakej premennej pre ďalšie spracovanie a prepočet?
Nástroj: MediaInfo
> download stránka: http://mediainfo.sourceforge.net/Download/Windows
> Windows XP - 32 bit - CLI
Použitím dočasného súboru to funguje:
Uložte si to do .bat alebo .cmd súboru. Spravte si z toho zástupcu na plochu. Ak na zástupcu pretiahnete nejaký videosúbor, zobrazí sa požadovaná informácia o formáte videa v tvare: stranový pomer_šírka_výška
Pokus o priame riešenie bez dočasného súboru nefunguje. Príkaz ignoruje voľbu --Output=... Výsledkom je posledný riadok z viacriadkového všeobecného výstupu.
Mám tam niekde chybu?
Nástroj: MediaInfo
> download stránka: http://mediainfo.sourceforge.net/Download/Windows
> Windows XP - 32 bit - CLI
Použitím dočasného súboru to funguje:
Kód: Vybrat vše
@echo off
MediaInfo.exe --Output="Video;%%DisplayAspectRatio%%_%%Width%%_%%Height%%" %1>tmpSubor.txt
set /p premenna=<tmpSubor.txt
echo Premenna je: %premenna%
pause
Pokus o priame riešenie bez dočasného súboru nefunguje. Príkaz ignoruje voľbu --Output=... Výsledkom je posledný riadok z viacriadkového všeobecného výstupu.
Kód: Vybrat vše
@echo off
for /f "delims=" %%a in ('MediaInfo.exe --Output="Video;%%DisplayAspectRatio%%_%%Width%%_%%Height%%" %1') do set premenna=%%a
echo Premenna je: %premenna%
pause
Mám tam niekde chybu?