Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » GRUB4DOS и GNU GRUB (часть 2)

Модерирует : gyra, Maz

gyra (06-12-2016 03:18): GRUB4DOS и GNU GRUB (часть 3)  Версия для печати • ПодписатьсяДобавить в закладки
На первую страницук этому сообщениюк последнему сообщению

   

kDnZP

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Код:
!BAT
setlocal
debug off
checkrange 20110918:-1 read 0x8278 || echo Please use grub4dos-0.4.5b-2011-09-18 or above! && exit 1
if "%1"=="" goto arameterMeasurement
set *
:GetParameters
if /i "%1"=="" && goto arameterMeasurement
set m.%~1=%~2
shift 1
shift 1
goto :GetParameters
 
:help
echo Usage: %0 cmd="cmd for each file" OPTIONS..
echo OPTIONS:
echo -e \t title="the main menu title"
echo -e \t menu="pre_set menu file"
echo -e \t subdir=n
echo -e \t devs="find parameters"
echo -e \t return="return cmd"
echo -e \t init="init cmd"
echo -e \t filpre=filepre
echo -e \t ext=fileext
echo -e \t root="root dir. e.g. ()/boot/"
echo -e \n\t for more please visit http://chenall.net
exit
 
:MenuCenter
set title=____________________
set title=%title:~0,%1%%
exit
 
arameterMeasurement
if not exist m.cmd && goto :help
if not exist m.title && set m.title=Please select a file
if not exist m.menu && set m.menu=(md)0x210+16 && echo -e default 1\ndebug off > (md)0x210+16
if not exist m.subdir && set m.subdir=1
if not exist m.devs && set m.devs=--set-root
if not exist m.root && set m.root=()
echo -e !BAT\necho %m.cmd% \>\> %m.menu% > (md)0x260+4
::GetTheTitleNumberOfCharactersForTheTitleCenter
set title=%m.title%
set /a title=68-*0x4CB00>>1
call :MenuCenter %title%
::AutomaticallyGeneratedMenu
set ?_n=1
set m.info=File list menu for grub4dos by chenall.\n\t\t for more information please visit http://chenall.net
if exist m.init && echo %m.init% >> %m.menu%
echo title %title% %m.title% %title%\n\n\t%m.info% >> %m.menu%
echo pause %m.info% >> %m.menu%
echo -e $[0106] %m.info%
echo $[0102] Please wait ...
echo $[1105] Working......
root %m.root%
if exist m.debug echo %@time%
find %m.devs% call :GenerateListOfFiles || echo Unknow Error.
if exist m.debug pause %@time%
echo title _________________ http://chenall.net _ 2011-08-22 _\n\n\t%m.info% >> %m.menu%
echo pause %m.info% >> %m.menu%
set ?_n=
if not exist m.return && configfile %m.menu%
echo title   0. Return >>  %m.menu%
echo %m.return%  >> %m.menu%
::echo boot >> %m.menu%
echo pause >> %m.menu%
::echo configfile %m.menu% >> %m.menu%
echo commandline >> %m.menu%
configfile %m.menu%
exit
 
:FileFilter
if "%~1"=="" exit
set tmp=%1
shift
if "%tmp:~-2,1%"=="~" && goto :FileFilter
if "%tmp:~0,1%"=="$" && goto :FileFilter
call :TestFile %0
goto :FileFilter
 
:GetFileSize
calc *0x8290>>30 && set size=30GB && exit
calc *0x8290>>20 && set size=20MB && exit
calc *0x8290>>10 && set size=10KB && exit
set size=00B
exit
 
:TestFile
if exist m.debug1 && echo %~f1
::DetectPrefix
call Fn.10 "%m.filpre%" "%~n1"
if "%@retval%"=="1" && goto etectionCatalog
::DetectCease
if exist m.ext || goto :AddMenu
set f.type=%~x1
if not exist f.type set f.type=.
call :Filter %m.ext% && goto :AddMenu
 
etectionCatalog
if %m.subdir%==0 && exit
if exist m.dirext || if "%~x1"=="" || exit
cat --length=0 /%1 && exit
if exist m.debug2 && echo $[0101] %~f1
goto :GenerateListOfFiles
 
:Filter
if "%1"=="" && exit 1
shift
if /i "%0"=="%f.type%" || goto :Filter
exit
 
:AddMenu
cat --length=0 /%1 || goto etectionCatalog
call :GetFileSize
if exist m.debug3 && echo $[0102] %~f1
calc *0x8290=*0x8290>>%size:~0,2%
set size=%@retval% %size:~2%
set m=1    %?_n%
echo title %m:~-3%. %~f1\n\n\t~%size% %~f1  >> %m.menu%
(md)0x260+4 %~f1
echo pause >> %m.menu%
echo configfile %m.menu% >> %m.menu%
::echo boot >> %m.menu%
set /a ?_n=%?_n%+1
exit
 
:GenerateListOfFiles
setlocal
if "%~1"=="" || root %~f1
set /a m.subdir=%m.subdir%-1
ls | call :FileFilter= || echo
endlocal
exit


Всего записей: 433 | Зарегистр. 25-09-2006 | Отправлено: 14:58 28-05-2012
   

На первую страницук этому сообщениюк последнему сообщению

Компьютерный форум Ru.Board » Компьютеры » Программы » GRUB4DOS и GNU GRUB (часть 2)
gyra (06-12-2016 03:18): GRUB4DOS и GNU GRUB (часть 3)


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru