Модераторы: bartram, Akella

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как написать BAT файл? назад в прошлое (MS-DOS) 
:(
    Опции темы
S.A.P.
Дата 8.8.2004, 22:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 2664
Регистрация: 11.6.2004

Репутация: нет
Всего: 71



Переменные в BAT е можно обьявлять переменные, кажется так:
set var=1

PM MAIL   Вверх
December
Дата 8.8.2004, 22:58 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Antitheorist
****


Профиль
Группа: Участник
Сообщений: 4423
Регистрация: 14.8.2002
Где: Харьков

Репутация: 6
Всего: 57



copy con myfile.bat
smile.gif


--------------------
Для друзей с винграда - скидки на разработку сайтов
PM MAIL WWW ICQ   Вверх
Guest
Дата 8.1.2005, 10:18 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











сам хочу узнать smile
  Вверх
Druidik25
  Дата 28.1.2005, 17:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 64
Регистрация: 27.1.2005
Где: Киев, Украина

Репутация: нет
Всего: нет



Чтобы написать бат файл в досе нужно написать
copy con имя_файла.bat
Писать текст самого файла
В конце файла нажать Ctrl+Z и Enter
Будет создан файл. Либо пользуясь какой нить оболочкой аля VC и Shift+F4 и писать.
Команды доса перечисляются по порядку одна за одной. Можно использовать if, goto, pause, echo ... ...
Команд не так много, но пользуясь ими можно описать многое.
PM MAIL ICQ   Вверх
Gigabyte
Дата 1.2.2005, 13:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Студент-халявщик
**


Профиль
Группа: Участник
Сообщений: 305
Регистрация: 1.11.2004
Где: ПЫтер

Репутация: нет
Всего: 3



Попробуй найти книгу "IBM PC для пользователей" В. Фигурнов.
Вообще в bat файлах можно сдылоть достаточно много вещей
даже вирус, форматирующий винт
если надо то пришлю код


--------------------

user posted image
user posted image
PM MAIL ICQ   Вверх
MVA77
Дата 10.11.2005, 18:38 (ссылка)    |    (голосов: 0) Загрузка ... Загрузка ... Быстрая цитата Цитата


Unregistered











Подскажите плиз.

В ДОСе нужно реализовать такую вещь: при загрузке создается каталог с именем текущей даты, туды копируются файлы. При повторной загрузке проверка каталога с этим именем, если он есть - копирование отменяется.
очень нужно - ежедневное резервирование файлов - backup.bat
smile

  Вверх
Beliar
Дата 4.4.2008, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.4.2008

Репутация: нет
Всего: нет



Подскажите плиз. Нужно написать батник который копировал бы файлик из одной папки локального компьютера в папку на сервере. К примеру так copy C:\Program Files\Alwil Software\Avast4\DATA\400.vps \\euroserv\ForAll\Base\ но дело в том что DOS не понимает виндового значения \\ а я в свою очередь не знаю как заставить его подконектиться и записать в папку файл. Может кто подсказать как это сделать?
PM MAIL   Вверх
Beliar
Дата 4.4.2008, 16:17 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.4.2008

Репутация: нет
Всего: нет



Эту задачу я решил copy /y "C:\Program Files\Alwil Software\Avast4\DATA\400.vps" \\euroserv\ForAll\Base\. но появилось другая задача, Теперь мне надо забрать с сервера этот файл Я сделал так copy /y "\\euroserv\ForAll\Base\400.vps" C:\Program Files\Alwil Software\Avast4\DATA\ и мне выдает ошибку не правильный синтаксис, в чем может быть проблема?
PM MAIL   Вверх
Infector
Дата 4.4.2008, 22:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 298
Регистрация: 13.1.2008

Репутация: 2
Всего: 2



Есть еще вариант, подходит и для классического ДОСа и для командной строки в NT:

подключаешь нару сетевым диском. Можно правым щелчком на "мой компутер", можно командой

net use z: \\euroserv\ForAll

потом работаешь как с обычным диском

copy z:\Base\400.vps C:\Program Files\Alwil Software\Avast4\DATA\ /q

если надо отключить шару от диска:

net use z: /delete
PM MAIL   Вверх
malor
Дата 3.9.2008, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 632
Регистрация: 17.11.2006

Репутация: нет
Всего: нет



Мне нужно чтоб мой bat-файл(назовем его - MyBatFile.bat и пропишем в списке путей поиска у windows PATH ) выполнял  запуск моей проги MyProga.exe в рамках того каталога где я нахожусь. Пример:
Есть каталоги - 
c:\common\dir1\
c:\common\dir2\
c:\common\dir3\


в каждом из них лежит моя прога MyProga.exe. Допустим я сижу в  папке c:\common\dir2\NekayaPapka и запускаю из нее MyBatFile.bat. В этом случае он должен запустить на выполнение  c:\common\dir2\MyProga.exe. В случае если б я находился в  c:\common\dir3 он должен был бы запустить c:\common\dir3\MyProga.exe.

Можете наброску сделать такого bat'a ? (или сказать какой командой DOS мне воспользоваться для извлечения путей).

Это сообщение отредактировал(а) malor - 3.9.2008, 11:37
PM MAIL   Вверх
Данкинг
Дата 3.9.2008, 12:06 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Yersinia pestis
****


Профиль
Группа: Завсегдатай
Сообщений: 8302
Регистрация: 7.11.2006
Где: მოსკოვი

Репутация: 1
Всего: 130



Если у тебя .bat в той же папке, то зачем вообще указывать путь? Вроде как можно просто написать MyProga.exe.


--------------------
There's nothing left but silent epitaphs.
PM MAIL WWW   Вверх
malor
Дата 3.9.2008, 12:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 632
Регистрация: 17.11.2006

Репутация: нет
Всего: нет



Цитата(Данкинг @ 3.9.2008,  12:06)
Если у тебя .bat в той же папке, то зачем вообще указывать путь? Вроде как можно просто написать MyProga.exe.

Кроме строки "...и запускаю из нее MyBatFile.bat. "  в моем сообщении есть еще строка:
"...пропишем в списке путей поиска у windows PATH "
Т.е. Bat-файл будет где-то лежать в одном надежном месте.
PM MAIL   Вверх
Mayk
Дата 3.9.2008, 12:21 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


^аВаТаР^ сообщение>>
****


Профиль
Группа: Участник
Сообщений: 2616
Регистрация: 22.5.2005
Где: за границей разум а

Репутация: 1
Всего: 134



Цитата(malor @  3.9.2008,  15:37 Найти цитируемый пост)

Можете наброску сделать такого bat'a ? (или сказать какой командой DOS мне воспользоваться для извлечения путей).

Способ в лоб - использовать %CD%, подстроки аля %CD~0,-2%(help set) и if

Добавлено @ 12:27
Код

if /i "%CD:~0,16%" == "c:\program files" echo program
if /i "%CD:~0,10%" == "c:\windows" echo "winda"

если запустить из c:\program files\far выдасть program
если запустить из c:\windows выдаст winda.

обращаю внимание на то что из c:\windows555 он тоже выдаст винда. оставляю данный баг на откуп читателям

Добавлено @ 12:28
PS. это работает в батниках win xp.  про другие не знаю. help if, help set решают

Это сообщение отредактировал(а) Mayk - 3.9.2008, 12:29


--------------------
 Здесь был кролик. Но его убили.
Человеки < кроликов, йа считаю.
PM MAIL WWW ICQ   Вверх
01MDM
  Дата 3.9.2008, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 273
Регистрация: 10.5.2008
Где: Default City

Репутация: 29
Всего: 29



Цитата

PS. это работает в батниках win xp.  про другие не знаю.


В dose это не прокатит  smile  Там нет `if /i`, а так же нельзя обрабатывать переменные ( %var:....%). И cкорее всего нет переменной %cd%

Много готовых решений именно для DOS Batch: 
http://home7.inet.tele.dk/batfiles/batfiles.htm


--------------------
Вопросы в личке останутся без ответов.
PM MAIL   Вверх
Wergel
Дата 5.3.2009, 11:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 4
Регистрация: 17.10.2006
Где: РнД

Репутация: нет
Всего: нет



Подниму старую тему smile
Нужен bat-ник который бы соединялся по сетевому пути к логу(который постоянно пишется) и с момента запуска данного bat-ника считывал все что пишется в этот момент в лог в отдельный файл определенный пользователем(например fragment.log). И этот файл(fragment.log) в который записывается результат должен храниться на локальной машине. Остановка работы bat-ника завершает запись в файл fragment.log 

смысл всего идентичен команде tail -f на Unix:
Код

[logur2l@l6 log]$ tail -f server.log >fragment.log

Которая завершается по нажатию CTRL+C

Помогите написать? или поможет у кого есть уже готовый.

PM MAIL   Вверх
Страницы: (4) Все 1 [2] 3 4 
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Windows"
December
bartram
Akella

Запрещается!

1. Обсуждать взлом и делиться кряками

2. Способствовать созданию и распространению вирусов

  • Для бессмертных бородатых вопросов типа Win vs Nix есть специальный форум Религиозные Войны
  • Несанкционированная реклама на форуме запрещена
  • Пожалуйста, давайте своим темам осмысленный, информативный заголовок. Вопль "Помогите!" таковым не является.
  • Чем полнее и яснее Вы изложите проблему, тем быстрее мы её решим.
  • ВСЕГДА УКАЗЫВАЙТЕ ВЕРСИЮ ОС

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, December, bartram, Akella.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS Windows | Следующая тема »


 




[ Время генерации скрипта: 0.0551 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.