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

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в 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
Zakkazak



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да здраствует VBS! Да здраствуют  господа скриптологи! Да здраствует Ру-борд!  
 
Добавлено:
Rush
Не сочти за абжорство    
 
А может ли VBS перехватывать действия
Сейчас поясню.. Твой скрипт не завершается, а продолжает наблюдать за Оффлайн-броузером. Если я нажимаю Alt+F4 (или  Закрыть), скрипт перехватывает и откладывает закрытие.
 
Для чего ? Чтоб вернуть исходный WebDown.dat (из папки Temp) на место. Потом дает возможность проге закрыться.
 
P.S.
Суть этого скрипта в том что, фильтрует WebDown.dat по опредеоенному критерию.
Визуально WebDown.dat это дерево копий-сайтов.

Всего записей: 995 | Зарегистр. 12-01-2005 | Отправлено: 16:49 13-04-2009
SONcemvo

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите написать батник, очень прошу
 
есть папка с архивами, нужно в каждый из архивов добавить файл!

Всего записей: 1 | Зарегистр. 20-02-2008 | Отправлено: 17:39 13-04-2009
guru431

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
как скопировать первое слово в первой строчке при помощи FOR?
если использовать так:
FOR /F "tokens=1" %%A IN (file.txt) DO SET num=%%A
то перебираются все первые слова в каждой строчке и копируется последнее

Всего записей: 64 | Зарегистр. 28-02-2007 | Отправлено: 22:58 13-04-2009
01MDM



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

Код:
 
FOR /F "tokens=1" %%A IN (file.txt) DO SET num=%%A && goto:next
:next
 

 
Или:

Код:
 
set /p str=<file.txt
for /f "tokens=1" %%i in ("%str%") do set num=%%i
 

Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 00:49 14-04-2009
Maza_Faka



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

Цитата:
есть папка с архивами, нужно в каждый из архивов добавить файл!

Очень мало информации. Какие архивы? Какие файлы? Как добавлять, с заменой или переименованием?
 
P.S.
Правильно заданный вопрос - 50% ответа.

Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 08:32 14-04-2009
TruLander100

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

Всего записей: 24 | Зарегистр. 22-03-2009 | Отправлено: 09:22 14-04-2009
01MDM



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

Код:
 
@echo off
 
for /f "tokens=*" %%i in ('dir /b /s /a-d "C:\1"') do if not exist "%%~dpi123" md "%%~dpi123"
for /f "tokens=*" %%i in ('dir /b /s /a-d "C:\1"') do move "%%i" "%%~dpi123"
 


Всего записей: 2638 | Зарегистр. 13-02-2006 | Отправлено: 09:57 14-04-2009 | Исправлено: 01MDM, 10:05 14-04-2009
Rush

Уже за тридцать...
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Zakkazak

Цитата:
А может ли VBS перехватывать действия  
Сейчас поясню.. Твой скрипт не завершается, а продолжает наблюдать за Оффлайн-броузером. Если я нажимаю Alt+F4 (или  Закрыть), скрипт перехватывает и откладывает закрытие.

Так?  
Прога, правда, сперва закрывается, а потом файл возвращается на место, но, насколько я понял, это не принципиально. Главное - вернуть на место оригинальный WebDown.dat

Цитата:
Суть этого скрипта в том что, фильтрует WebDown.dat по опредеоенному критерию.  

Я это понял. Можно сделать, если надо, и запуск из комстроки с параметрами. Типа:
Код:
wscript "script.vbs" /sort:"Descr="
Ну и т.п.

Всего записей: 3551 | Зарегистр. 20-11-2003 | Отправлено: 13:40 14-04-2009
TruLander100

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

Всего записей: 24 | Зарегистр. 22-03-2009 | Отправлено: 15:07 14-04-2009
Zakkazak



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

Цитата:
Прога, правда, сперва закрывается, а потом файл возвращается на место, но, насколько я понял, это не принципиально. Главное - вернуть на место оригинальный WebDown.dat

Да, верно. Я ступил почему-то... Если вернуть оригинальный до закрытия, то он перезапишется отфильтрованным..

Цитата:
Так?  

Спасибо, скрипт работает исправно.

Всего записей: 995 | Зарегистр. 12-01-2005 | Отправлено: 17:37 14-04-2009
XXXXL



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте!
Помогите пожалуйста написать бат, который при запуске пишет в файл "dinfo.txt" полный путь к директории где он находится.
Спасибо!

Всего записей: 286 | Зарегистр. 16-05-2007 | Отправлено: 23:44 14-04-2009
Maza_Faka



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

Код:
 
Echo %CD%>dinfo.txt
 

Всего записей: 1420 | Зарегистр. 25-10-2006 | Отправлено: 08:06 15-04-2009
GGS



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

Код:
Echo %~dp0>dinfo.txt


Код:
Echo %~dp0>%~dp0\dinfo.txt


Всего записей: 1000 | Зарегистр. 25-03-2002 | Отправлено: 09:03 15-04-2009 | Исправлено: GGS, 09:06 15-04-2009
XXXXL



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Maza_Faka, GGS, Спасибо! оба примера работаю.

Всего записей: 286 | Зарегистр. 16-05-2007 | Отправлено: 14:04 15-04-2009 | Исправлено: XXXXL, 16:10 15-04-2009
GGS



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

Цитата:
Записываю директорию нахождения бат файла в dinfo.txt:  
 
Код:
Echo %CD%>dinfo.txt  

Эта команда записывает не "директорию нахождения бат файла", а путь текущего каталога.
Они совпадают в частном случае, если Вы запускаете ВАТ-файл находясь в этой же папке.
Почувствуйте разницу.

Всего записей: 1000 | Зарегистр. 25-03-2002 | Отправлено: 15:53 15-04-2009 | Исправлено: GGS, 16:09 15-04-2009
XXXXL



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
GGS извиняюсь, не правильно написал. Правильно так:
 
Записываю полный путь к той директории, в которой он находится.

Код:
Echo %CD%>dinfo.txt  

 
Потом пытаюсь прописать путь в 1.txt заменив там слово "directoire" на содержимое "dinfo.txt"  
 

Код:
Код:setlocal    
set "toChange=directoire"    
set /p changeTo=<"dinfo.txt"  
gsar -s%toChange% -r%changeTo% -o "1.txt"  

 
В результате получаю ошибку:  
gsar: command error, not a valid detimal number : \Re  
 
Он указывает на часть пути.  
Подскажите как быть?
 
P.S Что этот: Echo %~dp0>dinfo.txt и этот: Echo %CD%>dinfo.txt способы работают, разница только в том, что первый вариант записыват путь со слешом в конце а второй без.

Всего записей: 286 | Зарегистр. 16-05-2007 | Отправлено: 16:10 15-04-2009
GGS



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

Цитата:
извиняюсь, не правильно написал. Правильно так:  
 
Записываю полный путь к той директории, в которой он находится.  
 
Код:
Echo %CD%>dinfo.txt  

От перестановки слов суть не меняется. Опять неправильно.
 
Чтобы понять отличия запустите Ваш ВАТ-файл, находясь в папке отличной от той где находится этот файл.

Всего записей: 1000 | Зарегистр. 25-03-2002 | Отправлено: 17:12 15-04-2009
igor_andreev

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

Цитата:
В результате получаю ошибку:  
gsar: command error, not a valid detimal number : \Re

Запусти gsar без параметров и прочитай три последние строчки того, что он выдаст тебе на экран. Символ ":" надо удваивать.

Всего записей: 1667 | Зарегистр. 08-12-2004 | Отправлено: 17:23 15-04-2009
XXXXL



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

Цитата:
Чтобы понять отличия запустите Ваш ВАТ-файл, находясь в папке отличной от той где находится этот файл.

Да, теперь я нашел отличия, очень удобно. Если я запускаю  его другим батником из другой папки, то он записывает путь не того который запускаю, а того которым запускаю.
 

Цитата:
Символ ":" надо удваивать.

Точно, теперь всё работает.
 
Большое всем спасибо!

Всего записей: 286 | Зарегистр. 16-05-2007 | Отправлено: 22:47 15-04-2009
D555



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

 Тревожит всё же важный вопрос,- а существует ли вариант команд батника для его запуска свёрнутым в панель задач ?
 
...просто надоедает пусть быстро, но выскакивающее окно... и если уж силами самого батника без стоонних утилит его не скрыть, - пусть уж хотя бы минимизированным выскакивало бы)

Всего записей: 375 | Зарегистр. 17-04-2003 | Отправлено: 07:53 16-04-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.Board
© Ru.Board 2000-2020

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru