Простой пример #1 Много прог, много однотипных действий, промежуточные результаты не интересны, всё в пределах одной папки.
Может конечно кто всё это и в один GUI может запихнуть, но чота сомневаюсь я, что будет...
@echo off
set prg1=bin\filecutter.exe
set prg2=bin\split.exe
set prg3=bin\openssl.exe
set prg4=bin\[Censored1].exe
set rom=[Censored2].nds
set tbl=table.txt
set key=[Censored3]
if exist *.nds ren *.nds "%rom%"
echo Cut NTR
%prg1% "%rom%" 14218240 NTR -s 16384 >Nul
echo Split NTR
%prg2% --suffix-length=5 --bytes=1k -d NTR NTR
del NTR
echo Count SHA1
%prg3% dgst -sha1 -mac HMAC -macopt hexkey:%key% NTR* > %tbl%
del NTR*
echo Write HashTable
%prg4% %tbl% "%rom%" 14234624
echo ___
echo Cut HashTable
%prg1% "%rom%" 284160 sector -s 14234624 >Nul
echo Split HashTable
%prg2% --suffix-length=5 --bytes=640 -d sector sector
del sector
echo Count SHA1
%prg3% dgst -sha1 -mac HMAC -macopt hexkey:%key% sector* > %tbl%
del sector*
echo Write HashTable2
%prg4% %tbl% "%rom%" 14518784
echo ___
echo Cut HashTable2
%prg1% "%rom%" 8880 block -s 14518784 >Nul
echo Count SHA1
%prg3% dgst -sha1 -mac HMAC -macopt hexkey:%key% block > %tbl%
del block
echo Write MasterHash
%prg4% %tbl% "%rom%" 808
del %tbl%
pause
Простой пример #2
Не просто работать с кучей файлов, а с кучей малознакомых файлов в куче малознакомых папок, ловко обходя при этом отдельные несовместимости различных прог.
@echo off
set prog1=soft\[Censored1].exe
set prog2=soft\[Censored2].exe
if exist upck_data\*_Yaz0 ROBOCOPY /S upck_data pack_data >nul
for /D %%d in (pack_data\*_Yaz0) do (
echo Packing %%d...
for %%f in (%%d\*.*) do (
%prog2% "%%f" >nul
move /Y "%%d\*.yaz0" "%%d\%%~nf.inner_junk" >nul
)
%prog1% pack %%d pack_data\%%~nd.zdata
rmdir /S /Q %%d
)
pause
И тд. и тп. примеров почему CLI будет жить до конца "кремниевого периода" без компромиссов и вне конкуренции, а может и ещё чуть дольше, можно напридумывать массу.
Тыц