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

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

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

Widok (10-03-2009 12:39): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Командная строка, батники\сценарии (bat, cmd)
(часть 1)
Вопросы, задачи и их решения по работе с командной строкой, файлами, а также сопутствующие ссылки.

 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Microsoft Windows » Задачи на bat-файлах 5
 
Полезные ссылки:
· Cmd. Описание от разработчиков
· Урок bat-аники (для начинающих)
· Курс лекций для начинающих. Полезно и просто описано
· Набор GNU утилит для win32
· Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· cmdow — изменение параметров и видимости дос-окна
· blat — отправка почты из консоли
· Справка по командам в виде Html
· Команды RunDll32
· Quick Batch File Compiler - Позволяет превратить ваш батник в независимое приложение
· Пример - получение и обработка списка пользователей
· Уильям Станек - Командная строка Microsoft Windows (вплоть до w2k3)
· Простой способ получать текущую дату всегда в одном формате (не зависит от языков и настроек)
 
Старая версия первого сообщения

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 12:08 19-11-2007 | Исправлено: Dmitriy05, 22:49 13-04-2008
Greay



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

Цитата:
:: mount.cmd  
@echo off  
dir Z:\ 1>nul 2>&1 && subst z: /d || subst z: %~dp0
 
Т.е после запуска в "Моем компьютере" появится кроме флешки еще съемный диск Z:, с которым и работать.  
Повторный запуск уберет съемный диск и флешку можно отмонтировать и извлечь

 
А нельзя сделать что бы появляся ТОЛЬКО диск Z ?

Всего записей: 254 | Зарегистр. 09-05-2004 | Отправлено: 15:46 04-01-2008
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Greay
Можно, но будет работать только при наличии diskpart.exe (WinXP Pro +). Можешь конечно положить его рядом с батником на флешку

Код:
 
@echo off
if not exist Z:\ (
    echo select volume %~d0 >mnt.cfg
    echo assign letter=z >>mnt.cfg
    echo exit >>mnt.cfg
    diskpart /s mnt.cfg
)  
 


Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 17:25 04-01-2008
JasPV

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Подскажите как реализовать следующее:
Есть cmd файл который сразу убивает ветку реестра, затем импортирует другую, далее запускает приложение по ярдыку lnk. Так вот, как сделать так, чтобы по завершении работы этого приложения, запускалась еще одна строка  в cmd файле на удаление ветки реестра? У меня она сейчас просто тупо отрабатывается после запуска приложения.
 
вот текст cmd файла:  
 
@echo off
reg delete "hkey_local_machine\software\vetka" /f
call regedit /s \\serv\prdir\reestrprogr.reg
\\serv\prdir\prog.lnk
reg delete "hkey_local_machine\software\vetka" /f ------- вот это надо чтоб отрабатывалось по завершении а не сразу послу запуска prog.lnk

Всего записей: 5 | Зарегистр. 19-05-2007 | Отправлено: 16:18 05-01-2008
Elroir



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

Код:
start /wait \\serv\prdir\prog.lnk

Но при этом батник будет висеть в открытом состоянии, пока не завершится приложение.

----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 16:27 05-01-2008
JasPV

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elroir
 
Спасибо!

Всего записей: 5 | Зарегистр. 19-05-2007 | Отправлено: 17:10 05-01-2008
kalkin

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elroir
 
==============================================
на Код:
compress /?
 
ответ
"compress" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
===============================================
 
OS WinXP

Всего записей: 54 | Зарегистр. 19-05-2006 | Отправлено: 20:49 05-01-2008
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kalkin
Она входит в  состав Windows Server 2003 Resource Kit Tools
 
 

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 21:41 05-01-2008
kalkin

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
понятно =) тогда объясни как реализовать упаковку стандартными средствами XP

Всего записей: 54 | Зарегистр. 19-05-2006 | Отправлено: 03:26 06-01-2008
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kalkin
А WinRAR не подойдет? Имхо, лучше него ничего нет, правда некоторые любят 7z из-за нежелания платить за качество...

Всего записей: 2690 | Зарегистр. 16-10-2003 | Отправлено: 10:20 06-01-2008
kalkin

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Garrett нет =(
еслиб можно было давно использовал ......
нужно имено стандартными средствами winxp

Всего записей: 54 | Зарегистр. 19-05-2006 | Отправлено: 19:05 06-01-2008
Elroir



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kalkin
Я практически уверен, что запустить из командной строки эту функциональность Windows невозможно. Поиск в Google тоже ничего не дал.

----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 20:43 06-01-2008
mozers



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kalkin Elroir
Цитата:
Я практически уверен, что запустить из командной строки эту функциональность Windows невозможно
А есть ли она эта функциональность? То что explorer WinXP (как, впрочем, и все известные файловые менеджеры) могут распаковывать zip-архивы совсем не значит что они могут их создавать. Имхо, если бы они это умели, то имели бы длинные судебные тяжбы с компанией WinZip, которая как и все остальные производители архиваторов, свободно распостраняет код и готовые dll для распаковки своих архивов, но алгоритм упаковки держит в секрете.
Если кто то создает свой упаковщик, то он не имеет права своим архивам давать расширение zip, дабы не вводить пользователя в недоразумение.
Поэтому, самый правильный путь - паковать с помощью pkzip или вообще отказаться от zip и паковать любым доступным архиватором в их формат.

Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 23:19 06-01-2008
Elroir



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

Цитата:
А есть ли она эта функциональность?

Есть. Send To->Compressed (zipped) Folder в эксплорере.
 
Добавлено:

Цитата:
Если кто то создает свой упаковщик, то он не имеет права своим архивам давать расширение zip, дабы не вводить пользователя в недоразумение.

Практически все коммерческие и некоммерческие архиваторы умеют (и позволяют)  создавать zip архивы.

----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 23:27 06-01-2008
Garrett

Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mozers
Согласен с Elroir, что все могут и создавать и распаковывать, т.к. ZLIB(ftp://ftp.uu.net/pub/archiving/zip/) бесплатна и доступна в исходниках, бери и делай свой архиватор.
Более того, думаю, что и WinZip черпает там идеи.

Всего записей: 2690 | Зарегистр. 16-10-2003 | Отправлено: 00:53 07-01-2008
mypka123

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброе  вреямя суток всем.
Вот подскажите люди добрые как реализовать можно следующее...
Надо с переносного харда копировать изображения (там есть папки 01,02,03 и т.д (доходит иногда до сотни) в них файлы с изображениями 01.jpg, 02.jpg, 03.jpg и т.д  так вот нада с каждой папки вытащить по 1 файлику изображения (под номером 02.jpg) в папку с картинками (base_picture),  но не все так просто тут нада как йа понял каждый файлик чтобы скопировать в эту папку он должен иметь другое название  а потом начиналось копирование следующего так вот собственно и все. А как ето зделать подскажите плиз...
вот до чего у меня мозг дошёл но сейчас позднее время а нужно ето как можно быстрее
 
cls
copy Z:\01\02.jpg D:\base_picture
rename D:\base_picture\02.jpg 01.jpg
copy Z:\02\02.jpg D:\base_picture
rename D:\base_picture\02.jpg 002.jpg
copy Z:\03\02.jpg D:\base_picture
rename D:\base_picture\02.jpg 03.jpg
copy Z:\04\02.jpg D:\base_picture
rename D:\base_picture\02.jpg 04.jpg
copy Z:\05\02.jpg D:\base_picture
rename D:\base_picture\02.jpg 05.jpg
...
 
П.с название файла которого скопировали в папку может быть любое.

Всего записей: 88 | Зарегистр. 06-11-2006 | Отправлено: 02:29 07-01-2008 | Исправлено: mypka123, 03:01 07-01-2008
mozers



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Elroir Garrett
Спасибо. Вправили мозги
Сейчас, когда я вдруг обнружил в SendTo "Compressed (zipped) Folder.ZFSendToTarget", идея сделать все из командной строки уже не кажется мне невыполнимой.
Вот на VBS же сделали люди...

Всего записей: 2187 | Зарегистр. 03-01-2002 | Отправлено: 04:04 07-01-2008
ovartur

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
помогите пожалуйста
я выкачал библиотеку lib.rus.ec
на выходе получаю папку с архивами:
Abdulaev_Chingiz_Simvoly_raspada.zip
Abe'_Kobo_Chelovek-jaschik.zip
 
тк это fb2,  то внутри есть тег <genre>...</genre>
подскажите как написать батник чтобы пролопатил папку с архивами и создал бы папку  с заданым жанром(genre) точнее жанраМИ
 
...а в идеале - чтобы архивы еще разархивировались бы с наименованием из тегов...
 
(скопировал в помощь из настройки программки Booki - сам яничего не понимаааа..)
// Фамилия Имя - Название книги
// Фамилия1 Имя1, Фамилия2 Имя2 - Название книги
// Фамилия Имя - Название книги (Название серии #НомерВСерии)
 
$i = 1
while ($i <= $authorno) {
  $str_t0 = author($i, "l")
 
  $str_t1 = author($i, "f")
  if ($str_t1 <> "") {
    if ($str_t0 <> "") $str_t0 = $str_t0 + " "
    $str_t0 = $str_t0 + $str_t1
  }
 
  if ($filename <> "") $filename = $filename + ", "
  $filename = $filename + $str_t0
 
  $i = $i + 1
}
 
if ($filename <> "") $filename = $filename + " - "
 
if ($seq <> "") {
  $filename = $filename + "("
  $filename = $filename + $seq
 
  if ($seqnum <> "") {
    $filename = $filename + " #"
    $filename = $filename + $seqnum
  }
 
  $filename = $filename + ") "
}
 
$filename = $filename + $title
 
// заменить недопустимые символы в имени файла на "_"
$filename = repl($filename, "\\", "_")
$filename = repl($filename, "/", "_")
$filename = repl($filename, ":", "_")
$filename = repl($filename, "*", "_")
$filename = repl($filename, "?", "_")
$filename = repl($filename, "\"", "_")
$filename = repl($filename, "<", "_")
$filename = repl($filename, ">", "_")
$filename = repl($filename, "|", "_")

Всего записей: 2 | Зарегистр. 08-01-2008 | Отправлено: 05:03 08-01-2008
Elroir



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ovartur
Батником это очень сложно сделать, так как у этих файлов нет постоянной структуры. Иногда тэги с информацией идут по одному на строчке - в этом случае можно вытащить данные. Иногда разделения на строчки нет и стандартными средствами вытащить данные не получается. В идеале нужен XML парсер - то есть программа на каком-либо языке программирования.

----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 01:15 10-01-2008
ovartur

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
жаль спасибо за ответ

Всего записей: 2 | Зарегистр. 08-01-2008 | Отправлено: 22:19 10-01-2008
sanb



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
FAQ и рекомендации по батникам>>
по командной строке>>
 
 
 
 

Всего записей: 2189 | Зарегистр. 26-07-2006 | Отправлено: 02:52 13-01-2008
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии (bat, cmd) 2
Widok (10-03-2009 12:39): Лимит страниц. Продолжаем здесь.


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

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru