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

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

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

Widok (03-03-2010 16:29): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 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

   

Widok



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

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

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 12:38 10-03-2009 | Исправлено: TechnicsKuzya, 13:54 27-12-2009
ScreamWolf



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

Цитата:
vbscript + save as dialog

набрал, нашел...

Код:
@echo off
set tmp=%tmp%\~.vbs
echo.Set objDialog = CreateObject^("SAFRCFileDlg.FileSave"^) >%tmp%
echo.objDialog.FileName = "FileName.vbs" >>%tmp%
echo.objDialog.FileType = "VBScript Script">>%tmp%
echo.intReturn = objDialog.OpenFileSaveDlg >>%tmp%
echo.If intReturn Then >>%tmp%
echo.    Set objFSO = CreateObject^("Scripting.FileSystemObject"^) >>%tmp%
echo.    Set objFile = objFSO.CreateTextFile^(objDialog.FileName^) >>%tmp%
echo.    objFile.WriteLine Date >>%tmp%
echo.    objFile.Close >>%tmp%
echo.Else >>%tmp%
echo.    Wscript.Quit >>%tmp%
echo.End If >>%tmp%
cscript //nologo %tmp%

 
а как мне теперь передать в этот скрипт данные, которые я хочу сохранить...
например результат команды tracert ... ?

Всего записей: 197 | Зарегистр. 15-05-2009 | Отправлено: 12:18 11-08-2009
igor_andreev

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

Цитата:
а как мне теперь передать в этот скрипт данные, которые я хочу сохранить...

Вместо вставки даты запускай, что нужно. Run или Exec
http://www.script-coding.info/WSH/WshShell.html#3.4.
 
Ты бы уже писал все на WSH, тут на рубоарде есть по нему топик

Всего записей: 1705 | Зарегистр. 08-12-2004 | Отправлено: 12:37 11-08-2009
ScreamWolf



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

Цитата:
Run или Exec

в том то все и дело, что скрипты не знаю...
 
понимать долго буду, но что поделать будем разбираться
 
Добавлено:
не могу ни где найти bat2com com2exe или bat2exe
 
именно что бы из ком.строки работало...
 
Помогите с поискоми

Всего записей: 197 | Зарегистр. 15-05-2009 | Отправлено: 12:45 11-08-2009 | Исправлено: ScreamWolf, 13:34 11-08-2009
Cosmogor



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ScreamWolf
 
Держи дружище.
http://dvusrachek.ifolder.ru/13501855


----------
(Цитата)
Я бы изменил весь мир, но бог не даёт исходников.

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 20:20 11-08-2009
volkss

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите пожайлуста с такой задачей - каждую неделю в определенную папку закачивается  архив с именем вида BaseParusGG_MM_DD_HH_MM.rar , где DD-день,MM-месяц,GG-год,HH-час,MM-минуты.Соответственно данные архивы копятся в данной папке. Необходимо чтобы архив за последнюю дату был скопирован в другую папку Linux по сети и переименован в вид BaseParus.rar .Подскажите пожайлуста каким образом это сделать.

Всего записей: 6 | Зарегистр. 11-08-2009 | Отправлено: 20:55 11-08-2009 | Исправлено: volkss, 23:43 12-08-2009
Cokolok

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
echo on
copy /y "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile\user\*.*" "\Moy\OperaProfie\styles\user\"
copy /y "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile\*.*" "\Moy\OperaProfie\"
end
Подскажите что неправильно в маём коде ... для того чтобы оно копировало отсюда... туда... и заменяло файлы которые существуют... спс =)

Всего записей: 27 | Зарегистр. 24-05-2009 | Отправлено: 21:29 11-08-2009
Cosmogor



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

Цитата:
"\Moy\OperaProfie\"

Если это "туда", то тут неправильно
Нуно указать полный путь
 


----------
(Цитата)
Я бы изменил весь мир, но бог не даёт исходников.

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 21:50 11-08-2009
Cokolok

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
непашит !
 
Добавлено:
как подругому написать Documents and Settings ??? потомучто Батники к длинным словам типа Documents and Settings непериваривают ! все это знают.. как написать покороче ?

Всего записей: 27 | Зарегистр. 24-05-2009 | Отправлено: 23:36 11-08-2009
ewild

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cokolok
если вы вошли в систему под учетной записью Admin, то
путь C:\Documents and Settings\Admin\Application Data возвращается переменной %AppData%
Тогда ваши исходные пути могут быть прописаны так  
"%AppData%\Opera\Opera\profile\user\*.*"
"%AppData%\Opera\Opera\profile\*.*"
однако это вам не поможет, так как "Батники к длинным словам типа Documents and Settings непериваривают" не соответствуют действительности. Ошибка где-то в другом.
 
В частности, для начала, как отмечено выше, укажите полные пути к целевым каталогам, типо так:  

Код:
copy /y "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile\user\*.*" "C:\SomePath\Moy\OperaProfie\styles\user\*.*"  
copy /y "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile\*.*" "C:\SomePath\Moy\OperaProfie\*.*"

где C:\SomePath - недостающая часть вашего фактического пути
 
И я бы на вашем месте предпочел команду xcopy (вместо copy), типа так:

Код:
 
xcopy "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile\user" "С:\SomePath\Moy\OperaProfie\styles\user" /chikrsy
xcopy "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile" "С:\SomePath\Moy\OperaProfie" /chikry

Всего записей: 1196 | Зарегистр. 13-08-2005 | Отправлено: 00:14 12-08-2009 | Исправлено: ewild, 15:03 12-08-2009
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
volkss
Удобней было бы сортировать при формате GGMMDD_HHMM.
При условии, что все значения двухзначные, т.е например год - 09, минута - 02, час - 17 и т.д. Попробуй, проверял, но без пристрастия:

Код:
 
@echo off
setlocal
 
for /f "tokens=*" %%i in ('dir /b *.rar') do call:sort "%%~ni"
 
for /f "tokens=2 delims==" %%i in ('set file_') do set "file=%%i"
xcopy /y %file%.rar "\\server\DestFolder\%file:~0,-11%.rar"
 
goto:eof
 
:sort
set "file=%~1"
set "file=%file:~-7,2%%file:~-9,2%%file:~-11,2%%file:~-4%"
set "file_%file%=%~1"
 


Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 09:14 12-08-2009 | Исправлено: 01MDM, 09:52 12-08-2009
Cokolok

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
ну люди все .... последний раз расказываю что я от вас хочу ... все постоянно мне даёте нерабочое !
вот маи коды которые неработают
copy /y "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile\user\*.*" "D:\Moy\OperaProfie\styles\user\"
copy /y "C:\Documents and Settings\Admin\Application Data\Opera\Opera\profile\*.*" "D:\Moy\OperaProfie\"
тут все написано куда я хочу копировать и куда вставить ! я неявляюсь пользователем Admin ... поэтому ваши пиременные тут некатят.... xcopy и copy непашут... мне надо чтобы оно просто напросто копировало оттуда..... туда.... где указано... и заменяла уже сущестующие папки.... если ктото чтото неможи понять.. стучитесь в асю ... я с 3 часов всегда до 12 часов в ней... вот 400989398 . СПС !

Всего записей: 27 | Зарегистр. 24-05-2009 | Отправлено: 14:11 12-08-2009
ewild

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

Цитата:
я неявляюсь пользователем Admin

Cokolok
тогда могут быть проблемы с правами доступа - если пользователь Admin ввел соответствующие ограничения, а у вашей учетной записи нет полномочий эти права изменить.

Всего записей: 1196 | Зарегистр. 13-08-2005 | Отправлено: 15:09 12-08-2009
Cokolok

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

Цитата:
Цитата:я неявляюсь пользователем Admin  
 
 
Cokolok  
тогда могут быть проблемы с правами доступа - если пользователь Admin ввел соответствующие ограничения, а у вашей учетной записи нет полномочий эти права изменить.

ну типо чтото такое... просто кода я вырезаю файл из папки админ... оно пишет( "вы дейстительно хоитите перекинуть файл для чтений" "имя файла") и там да или нет... может в этом ошибка ? как эту шнягу убрать ?

Всего записей: 27 | Зарегистр. 24-05-2009 | Отправлено: 17:36 12-08-2009
volkss

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите пожайлуста с такой задачей - каждую неделю в определенную папку закачивается  архив с именем вида BaseParusGG_MM_DD_HH_MM.rar , где DD-день,MM-месяц,GG-год,HH-час,MM-минуты.Соответственно данные архивы копятся в данной папке. Необходимо чтобы архив за последнюю дату был скопирован в другую папку Linux по сети и переименован в вид BaseParus.rar .Подскажите пожайлуста каким образом это сделать.

Всего записей: 6 | Зарегистр. 11-08-2009 | Отправлено: 18:46 12-08-2009
01MDM



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
volkss
Ну так попробуй вариант выше...

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 18:54 12-08-2009
volkss

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

Всего записей: 6 | Зарегистр. 11-08-2009 | Отправлено: 19:09 12-08-2009
Cosmogor



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Доброго времени суток
 
Помогите со скриптом,  
Нужно открыть папку с программой, путь беру в реестре.
скрипт вроде правильно написан, но всё время выдаёт  
(Путь "C:\Program" не существует или не является каталогом.)
Где же ещё эти кавычки поставить в приведённом ниже коде?
 
Код:
 
setlocal
SET "WinRAR=HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\WinRAR.exe"
 
for /f "tokens=3" %%a in ('reg query "%WinRAR%" /v Path ^| find /i "Path"') do set "instdir=%%a"
 
explorer "%instdir%"

 
Спс.

----------
(Цитата)
Я бы изменил весь мир, но бог не даёт исходников.

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 19:56 12-08-2009
igor_andreev

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

Код:

for /f "tokens=2*" %%a in ('reg query "%WinRAR%" /v Path ^| find /i "Path"') do set "instdir=%%b"

Всего записей: 1705 | Зарегистр. 08-12-2004 | Отправлено: 20:22 12-08-2009
Cosmogor



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
igor_andreev
 Спасибо друг, я уж неделю цифры к  
tokens подставляю , а про %%b
и не думал даже.
 
Подскажи ещё пожалуйста значение setlocal ,  
и нужно ли оно вообще в этом коде?
 
Спс.

----------
(Цитата)
Я бы изменил весь мир, но бог не даёт исходников.

Всего записей: 230 | Зарегистр. 22-04-2009 | Отправлено: 20:50 12-08-2009
01MDM



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

Цитата:
не работает

Как понять?

Цитата:
в определенную папку закачивается  архив с именем вида BaseParusDDMMGG_HHMM.rar


Цитата:
в определенную папку закачивается  архив с именем вида BaseParusGG_MM_DD_HH_MM.rar

От чего отталкиваться?  
 
 
 
Добавлено:
Cosmogor

Цитата:
Подскажи ещё пожалуйста значение setlocal ,  
и нужно ли оно вообще в этом коде?  

setlocal ограничивает область действия переменных. Необходима для тестирования, когда в одной консольной сессии запускаешь несколько раз один и тот же батник. Без setlocal, переменные, определенные в батнике, будут еще "жить" при следующем запуске, что может повлиять на результат. Так же служит для ограничения пространства деятельности переменной в самом батнике между setlocal-endlocal.
 
В данном коде есть переменная %instdir%, и хоть она каждый раз перезаписывается,  setlocal не будет лишним

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 23:01 12-08-2009
   

Страницы: 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

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


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

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

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru