Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Co znamena ze Shell je interpret prikazu???

v příkazovovém řádku si napíšeš sled základních příkazů, pak dávku pojmenuješ s příponou bat, cmd, u tučňáků nepovinně sh nebo ničím (samozřejmě s jejich syntaxí).
no a po spuštění to začne něco dělat:

@echo off & REM # dostupne disky v XP,W7 en/cz
REM # parametry:
REM # batka      - bez parametru vypise velikost NTFS disku
REM # batka free - u NTFS vypise volne misto
REM # batka sna  - pro HirensCD, na discich hleda .sna zalohy v rootu
REM # batka *    - test
 echo "%1 %2" | find "*" >nul
  if not errorlevel 1 mode con: lines=999
:USER
REM net user %username% | find "*Users"
REM  if errorlevel 0 if not errorlevel 1 pause && goto END
:LANG
 (set gb=Gbyte) & (set prm=%1.)
  if %computername%==MiniXP (set prm=sna.)
 (set fhdd=Fixed) & (set fvol=me Na) & (set ffs=em Na) & (set fsum=of by)
  if "%prm%"=="free." (set fsum=of fr) && (set gb=Gbyte free)
 ver /? | find "Zobraz" >nul
  if errorlevel 1 goto VYPIS
 (set fhdd=disk) & (set fvol=ev sv) & (set ffs=ev sy) & (set fsum=et ba)
  if "%prm%"=="free." (set fsum=et vo) && (set gb=Gbyte free)

:VYPIS
 echo disk: typ, filesystem, nazev, kapacita [%computername%]
 echo =================================================
 for /f "tokens=* delims=#" %%a in ('fsutil fsinfo drives ^| find ":"') do (set drives=%%a)
  if "%drives:~15,1%"=="" goto FSLOUPEC

:FRADEK
 REM - W7 DS, W7 en
 for /f "tokens=* delims=, " %%a in ("%drives%") do (set retez=%%a)
 for %%i in (%retez%) do call :_IKS %%i
 goto END
:_IKS
 (set iks=%1)
  if "%iks:~-1%"==":" goto :EOF
 (set iks=%iks:~0,2%)
 call :DISK %iks%
 goto :EOF

:FSLOUPEC
 REM - XP cz, XP en
 for /f "tokens=1,2 delims=\ " %%a in ('fsutil fsinfo drives ^| find ":"') do call :DISK %%a %%b
 goto END

:DISK
 (set dsk=%1) & (set dsk2=%2) & (set sna= )
  if not "%2"=="" set dsk=%2
 if %dsk%==B: if %prm%==sna. goto :EOF
 REM -- popis jednotky --
 for /f "tokens=* delims=?" %%t in ('fsutil fsinfo drivetype %dsk%') do (set dtype=%%t)
 fsutil fsinfo volumeinfo %dsk%\ >nul
  if errorlevel 1 goto CDR
 REM -- label a fs --
 for /f "tokens=2 delims=:" %%v in ('fsutil fsinfo volumeinfo %dsk%\ ^| find "%fvol%"') do (set vvol=%%v)
 for /f "tokens=2 delims=:" %%f in ('fsutil fsinfo volumeinfo %dsk%\ ^| find "%ffs%"') do (set vfs=%%f)
 echo %vfs% | find "NTFS" >nul
  if errorlevel 1 goto FATx
 REM -- velikost NTFS jen local --
 fsutil volume diskfree %dsk% >nul
  if errorlevel 1 goto FATx
 for /f "tokens=2 delims=:" %%b in ('fsutil volume diskfree %dsk% ^| find "%fsum%"') do (set _vel=%%b)
  for /f "tokens=1 delims= " %%b in ("%_vel%") do (set vel=%%b)
  (set vel=%vel:~0,-6%)
   (set /a "vel=%vel%/1070")
   if %vel%==0 (set tabr=%dtype% %vfs:~1% - %vvol:~1%) && goto DRADEK
 (set tabr=%dtype% %vfs:~1% - %vvol:~1% ~ %vel% %gb%)
 if not %prm%==sna. goto DRADEK
  if not exist %dsk%\*.sna goto DRADEK
 for /f "tokens=* delims=?" %%s in ('dir %dsk%\*.sna /b ^| find ".sna"') do (set sna=%dsk%\%%s)
 (set tabr=%tabr%, %sna%)
 goto DRADEK
:CDR
 echo %dtype%
 goto :EOF
:FATx
 (set tabr=%dtype% %vfs:~1% - %vvol:~1%)
 if not %prm%==sna. goto DRADEK
  if not exist %dsk%\*.sna goto DRADEK
 for /f "tokens=* delims=?" %%s in ('dir %dsk%\*.sna /b') do (set sna=%dsk%\%%s)
 (set tabr=%tabr%, %sna%)
:DRADEK
 echo %tabr%
 goto :EOF

:END
a to, co tyto běžné interní nebo samostatné externí příkazy s jejich parametry přeloží k vykonání, to je ten interpret.

Reakce na odpověď

1 Zadajte svou přezdívku:
2 Napište svou odpověď:
3 Pokud chcete dostat ban, zadejte libovolný text:

Zpět do poradny