Nevim co oznacujete DOS shellem,vsechny Win na jadre NT obsahuji 32bitovy shell interpret cmd.exe. MSDOS 16bit interpret (command.com) je v NT systemech pritomen uz jen kvuli backward compatibility. A s cmd.exe se da celkem slusne scriptovat, jen to skoro nikdo neumi/nepouziva....
command.com resp. cmd.exe resp. interpreter *.bat suborov je podla mna na scriptovanie skoro nepouzitelny. S Windows shellom je to trosku lepsie, ale naco sa ucit dalsi obskurny skriptovaci jazyk ked si mozem nainstalovat bash interpreter a zakladnu sadu commandline prikazov a vystacim si s nimi na vsetkych mne dostupnych systemoch.
cmd.exe:
for /F %%x in ('dir /B/D %MYDIR%') do (echo %x)
powershell.exe:
$files = Get-ChildItem "%MYDIR%"
for ($i=0; $i -lt $files.Count; $i++) {
Write-Host $files[$i].FullName
}
shell:
for i in ./*; do echo $i; done
Asi je to o zvyku, ale nevim nevim jestli bych si prvni tri byl schopen(/chtel) zapamatovat a pouzivat bez neustaleho cumeni do manualu nebo stackoverflow.
VmWare Player používám také. Dělá ale něco trochu jiného - je to Linux, který vidí disky. Pokud dělám něco pro Linux, tak jedu právě v tom.
MSYS je ale sada programů (včetně shellu) do MS Windows. Fungují na příkazové řádce i v "dosových" dávkových souborech, lze je volat z programů. A MinGW má takový drobný rozdíl oproti Cygwinu - on kompiluje proti MS Windows knihovnám, takže generuje nativní MS Windows binárky. Cygwin to sice zvládne také, ale stojí to více úsilí, protože se v první řadě snaží o "emulaci" POSIXového OS tak, aby i čistě Unixová aplikace běžela na PC s MS Windows.
Pokud vyvíjím pro MS Windows, pak MinGW je výborný nástroj. Na výsledku se nepozná, že jsem použil "tool chain" z Linuxu, přičemž já mám všechny nástroje typu gcc, grep, diff apod., na které jsem si za ta léta zvykl. Víceméně to není nic jiného, než že někdo vzal programy z Linuxu a zkompiloval je pro MS Windows.