Страница: 1 |
Вопрос: задачи по dos(cmd) | Добавлено: 04.09.06 20:22 |
Автор вопроса: ![]() |
Нужна помощь с написанием сценариев для DOS || CMD. Выполнить в DOS || CMD Очень нужно написать batch программы со следующими постановками: написать командный файл, производящий вывод на экран содержимого трех заданных файлов. Выполнение всех проверок обязательно написать командный файл, производящий дефрагментацию указанного диска путем копирования всего содержимого диска в новый каталог. Форматирование диска и возвращение информации обратно. Каталог удалить. написать альтернативу команде COPY CON: необходимо произвести проверку наличия заданного файла в случае его отсутствия создать его с клавиатуры, если существует такой файл, то выводить его содержимое на экран и выдавать запрос перезаписать файл. выполнить задание №1 при помощи команд FOR, SHIFT. отсортировать заданный каталог способом, заданным пользователем Две первых я сделал, но их наверняка можно усовершенствовать и исправить недочеты. Буду весьма признателен за любую помощь. @cls @echo off @IF NOT DEFINED %1 @echo @GOTO F11 @IF EXIST %1 (type %1) ELSE (@ECHO First file does not exist!!) @GOTO N1 :F11 @ECHO * @ECHO ********************* @ECHO First file name is not set!* @ECHO ********************* :N1 @IF NOT DEFINED %2 @echo @GOTO F12 @IF EXIST %2 (type %2) ELSE (@ECHO Second file does not exist!!) @GOTO N2 :F12 @ECHO * @ECHO ************************ @ECHO Second file name is not set!* @ECHO ************************ :N2 @IF NOT DEFINED %3 @echo @GOTO F13 @IF EXIST %3 (type %3) ELSE (@ECHO Third file does not exist!!) @GOTO N3 :F13 @ECHO * @ECHO ********************** @ECHO Third file name is not set!* @ECHO ********************** :N3 @ECHO The end. ???????????????????????????Вторая @cls @IF NOT DEFINED %1 @echo @GOTO FAULT @DEL /F/S/Q c:\temp\floppy\* @mkdir c:\temp\floppy @copy copy /Y/V/Z %1:\* c:\temp\floppy @IF NOT ERRORLEVEL 0 recover %1:\* @PAUSE Press any key to begin disk formatting. @format %1: @GOTO answer%ERRORLEVEL% :answer0 @echo Sucsessfull formated, copying... @copy /Y/V c:\temp\floppy\* %1:\ @IF ERRORLEVEL 0 Goto SUC @echo Error occuared while copying.... @Goto End :answer1 @ECHO Probably disk doesnt exist... @Goto FAULT :answer3 @echo Skipped by CTRL+C or CTRL+BREAK... @Goto SUC :answer4 @echo Fatal error! Stop. @Goto SUC :answer5 @echo User confirmation fault...(User select "n") Stop. @Goto SUC :FAULT @echo Please enter correct volume! @Goto SUC :SUC @DEL /F/S/Q c:\temp\floppy @exit /B :End @echo Operation "copy" return an error, original files are still available in c:\temp\floppy. |
Ответы | Всего ответов: 4 |
Номер ответа: 1 Автор ответа: ![]() ![]() ![]() ![]() ICQ: 192496851 Вопросов: 75 Ответов: 3178 |
Профиль | Цитата | #1 | Добавлено: 05.09.06 15:09 |
Зачем так парится?! Бери QBasic и вперед!
А если уж ОЧЕНЬ надо чтобы был батч файл, то можешь там написать: @echo off
Где Program.exe — имя твой программы на QBasic
Program.exe |
Номер ответа: 2 Автор ответа: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Разработчик Offline Client Вопросов: 236 Ответов: 8362 |
Профиль | Цитата | #2 | Добавлено: 05.09.06 21:59 |
Усовершенствование:
@PAUSE Press any key to begin disk formatting.
@format %1: @GOTO answer%ERRORLEVEL% заменить на: @format D: /c /autotest P.S. Не понимающим просьба не эксперементировать ![]() А вообще подзабыл я уже cmd, щас вспоминаю, сколько раньше кипиша было по этим батвирусов, всем прям интересно было выучить этот cmd ))) А не укого нет справочника по этому шелу? Я мож бы аффтару топа помог... |
Номер ответа: 3 Автор ответа: ![]() ![]() ![]() Вопросов: 6 Ответов: 171 |
Профиль | Цитата | #3 | Добавлено: 06.09.06 19:45 |
Ах, тряхнем стариной :D
батник для первого задания: @echo off @echo ************** prg1 *************** >prg.txt prg1 >>prg.txt @echo ************** prg2 *************** >>prg.txt prg2 >>prg.txt @echo ************** prg3 *************** >>prg.txt prg3 >>prg.txt type prg.txt |
Номер ответа: 4 Автор ответа: ![]() ![]() ![]() Вопросов: 6 Ответов: 171 |
Профиль | Цитата | #4 | Добавлено: 06.09.06 20:14 |
Задача 2:
@echo off @echo Вставтьте чистый диск в дисковод A: format a: /S /V <Yes set comspec=A:\command.com rem если это не сделать, то после формата c: батник скажет что не нашел command.com copy ..........xcopy.exe A:\ rem change ......... to real path copy ..........format.exe A:\ copy ..........sys.exe A:\ cd x:\ md x:\BackUp a:\xcopy c:\*.* x:\BackUp /в лом смотреть ключи, должны быть -копировать все директории со всеми атрибутами @echo А сейчас что будет ........ ![]() a:\format c: /V <Y rem ===Y auto answer to stupid question "Are you sure" ![]() a:\sys a:\ c:\ a:\xcopy x:\BackUp\*.* /субДир и все аттрибуты c:\ set comspec=c:\command.com cd x:\BackUp del *.* <Y rd x:\BackUp |
Страница: 1 |
|