Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Задачи на bat-файлах 6

Автор: wolf0425
Дата сообщения: 28.02.2009 13:30
Скрипт в итоге из шедулера запускается только 1 почемуто файл со списком обработанных ложится прямо возле этого общего пусковика.
так он и должен ложиться там, где был текущий каталог в момент его запуска - никаких команд смены каталога в скрипте нет.

А куда ему надо ложиться?
или ты хочешь два разных лога обработанного у параллельно запущенных батников?

И какой смысл запускать параллельно много копий скрипта? быстрее парситься не будет - оно или в проц или в диск упирается.
Автор: K_AHTOH
Дата сообщения: 28.02.2009 17:32
wolf0425

Цитата:
И какой смысл запускать параллельно много копий скрипта?


Парсеры запускаются на сервере с двумя 4-х ядерными Ксенонами. Поэтому параллельное исполнение имеет смысл. 1 парсер работает на нем в среднем 40 минут. Два - 45.

К сожалению сейчас в экспериментах ограничен. Поэтому придется мне подождать понедельника.
Автор: johnmar
Дата сообщения: 28.02.2009 22:22
Как во всех файлах с именем default.htm в каталоге C:\temp и всех его подкаталагах добавить ко всем url,
заканчивающимся на цифры,
строку

Код: /default.htm
Автор: Maza_Faka
Дата сообщения: 01.03.2009 07:42
johnmar

Цитата:
Как во всех файлах с именем default.htm в каталоге C:\temp и всех его подкаталагах добавить ко всем url,
заканчивающимся на цифры,
строку

Попробуй так:

Код:
@Echo Off

For /R c:\Temp %%A In (default.htm) Do (
    Sed "s/\(<a href.*[0-9]\)\"/\1\/default.htm\"/g" < "%%A" > "%%~dpA\out.tmp"
    Del /F /Q "%%A"
    Ren "%%~dpAout.tmp" "%%~nxA"
)
Автор: wolf0425
Дата сообщения: 01.03.2009 14:03
K_AHTOH
что-то мне говорит, что два запущенных в нынешнем виде скрипта - начнут парсить один и тот же файл
Автор: slech
Дата сообщения: 01.03.2009 16:28
всем привет.
есть такая задача:
много логов IIS - папки вида W3SVCxxxxxxxx а в них файлы exYYMMDD.log YY=год, MM=месяц, DD=день.
ex090101.log
ex090102.log
ex090103.log
...
ex090201.log
ex090202.log
ex090203.log
....

нажно последовательно заходить в каждую папку и выполнять архивирование помесяцам года.
Server01_W3SVCxxxx0_0901.7z
Server01_W3SVCxxxx0_0902.7z
Server01_W3SVCxxxx1_0901.7z
Server01_W3SVCxxxx1_0902.7z
Server01_W3SVCxxxx2_0901.7z
Server01_W3SVCxxxx2_0902.7z

W3VCxxxxx - я сам могу указать в файле получив из dir, и потом это же использовать в образовании имени архива.
тут больше непонятно как пробежаться по месяцам года и выполнить с каждым месяцем архивацию.

может кто уже делал похожее ?

спасибо.
Автор: K_AHTOH
Дата сообщения: 01.03.2009 18:25
wolf0425

Цитата:
начнут парсить один и тот же файл


Да нет... Пути к источникам у каждого парсера свой. Все проверенно. Работает.
Автор: 01MDM
Дата сообщения: 02.03.2009 08:10
slech

Попробуй такой вариант:

Код:
@echo off
for /d %%i in (W3SVC*) do (
pushd "%%i"
set folder=%%i
for /l %%i in (1,1,12) do call:arch %%i
popd
)
goto:eof

:arch
set mon=0%1
7z a Server01_%folder%_09%mon:~-2%.7z ex09%mon:~-2%*.log 2>nul
Автор: GGS
Дата сообщения: 02.03.2009 15:42
Подскажите, пожалуйста, какую строку надо вставить в *.bat, чтобы выполнилась функция "Показать рабочий стол"?
P.S. Не путать с выполнением "Свернуть все окна.scf"
Автор: Maza_Faka
Дата сообщения: 03.03.2009 08:05
GGS

Цитата:
функция "Показать рабочий стол"?

А ручками эта команда, как вызывается?
Автор: GGS
Дата сообщения: 03.03.2009 13:36
Maza_Faka

Цитата:
ручками эта команда, как вызывается?

Вот это я и хочу узнать. Через запуск функций какой-нибудь DLL, наверное.
Автор: TechnicsKuzya
Дата сообщения: 03.03.2009 13:51
Может кому пригодится, тут описан авторский скрипт для сборника обновлений...

P.S. Не знаю, может способ определения языка операционной системы в пакетном файле я придумал не совсем корректный, но работает на 100%
Автор: king_stiven
Дата сообщения: 03.03.2009 18:50
GGS
Насколько я знаю функция "Показать рабочий стол" и "Свернуть все окна.scf" это одно и то же.
Автор: Serhiy123
Дата сообщения: 03.03.2009 19:22
GGS
Имхо, "Показать рабочий стол" = "Свернуть все окна.scf" = Win+D
Посему создаем файлик minimize.scf:

Код:
[Shell]
Command=2
IconFile=explorer.exe,3

[Taskbar]
Command=ToggleDesktop
Автор: RomanF
Дата сообщения: 03.03.2009 22:36
Есть всеми известный файл Hosts. В нём имеются записи формата
<ipАдрес> <проблеы или табуляторы> <домен>
Код: 127.0.0.1    localhost
Автор: GGS
Дата сообщения: 04.03.2009 02:23
king_stiven, Serhiy123
Про вариант с *.scf я знаю и не он меня интересует (см. P.S. в моём посте выше).

Автор: K_AHTOH
Дата сообщения: 04.03.2009 07:17
GGS
Если это не свернуть все окна то, что это? Может пример API функции хотя бы покажите?
Автор: Maza_Faka
Дата сообщения: 04.03.2009 08:28
RomanF

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

Как я понял, проверять нужно и IP-адрес и хост? Боюсь, что придётся использовать сторонние утилиты: sed, grep and etc..., так, как придётся искать, используя регулярные выражения.

GGS

Цитата:
Про вариант с *.scf я знаю и не он меня интересует

Что конкретно вас интересует? Эмуляция нажатий клавиш?
Автор: wolf0425
Дата сообщения: 04.03.2009 10:11

Цитата:
Боюсь, что придётся использовать сторонние утилиты: sed, grep and etc..., так, как придётся искать, используя регулярные выражения.
где ты там регулярные выражения то увидел - такие чтоб for /f c ними не справился?
Автор: GGS
Дата сообщения: 04.03.2009 10:49
K_AHTOH, Maza_Faka
Правая кнопка мышки на панели задач => Показать рабочий стол
Это работает и без существования соответствующего файла *.scf
Меня интересует, каким образом командой в BAT-файле это выполнить. Без *.scf
Наверно, что-то типа строки rundll32 shell32.dll...
Автор: K_AHTOH
Дата сообщения: 04.03.2009 11:11
GGS
http://www.nirsoft.net/utils/nircmd.html
C:\Documents and Settings\Пользователь\Application Data\Microsoft\Internet Explorer\Quick Launch\Свернуть все окна.scf

Код: [Shell]
Command=2
IconFile=explorer.exe,3
[Taskbar]
Command=ToggleDeskto
Автор: GGS
Дата сообщения: 04.03.2009 11:42
K_AHTOH
Например, если я в BAT-файле вставляю команду:
rundll32 user32.dll LockWorkStation
то происходит блокировка компа, а BAT-файл продолжает выполняться.

Мне нужна аналогичная конструкция для скрытия всех окон и продолжения работы BAT-файла.
Без внешних "примочек" и без *.scf

Автор: igor_andreev
Дата сообщения: 04.03.2009 11:50
GGS
somename.vbs

Код:
CreateObject("Shell.Application").MinimizeAll
Автор: GGS
Дата сообщения: 04.03.2009 12:26
Работают такие фрагменты в ВАТ-файлах:

Цитата:
echo [Shell]>test.scf
echo Command=^2>>test.scf
echo [Taskbar]>>test.scf
echo Command=ToggleDesktop>>test.scf
test.scf
del test.scf

и (спасибо igor_andreev)

Цитата:
echo CreateObject("Shell.Application").MinimizeAll>test.vbs
test.vbs
del test.vbs

но... не совсем красиво, т.к. требуется создание дополнительных файлов
Автор: Serhiy123
Дата сообщения: 04.03.2009 12:39
GGS
Если без создания внешних файлов, то как вариант (имееся в виду, что "Свернуть все окна.scf" заведомо существует)

Код:
start C:\Documents and Settings\Пользователь\Application Data\Microsoft\Internet Explorer\Quick Launch\Свернуть все окна.scf
Автор: GGS
Дата сообщения: 04.03.2009 12:46
Serhiy123
Спасибо, конечно. Но Вы прочитали бы, что я писал ранее.

Цитата:
имееся в виду, что "Свернуть все окна.scf" заведомо существует

Вот именно.

Добавлено:
И ещё. Всё-таки существует разница между командами по клавишам <Win+D> и <Win+M>
Автор: Maza_Faka
Дата сообщения: 04.03.2009 14:12
wolf0425

Цитата:
где ты там регулярные выражения то увидел - такие чтоб for /f c ними не справился?



Цитата:

имеются записи формата
<ipАдрес> <проблеы или табуляторы> <домен>

Попробуй указать символ табуляции утилите Findstr


Цитата:

перед добавленим хочу проверить

При чём здесь For /F? Можно, конечно, проверить и с помощью For /F, разбирая каждую строку, а можно заюзать Sed, что будет намного быстрее
Автор: Al0ner
Дата сообщения: 04.03.2009 16:08
Всем доброго времени суток, вопрос таков: как сделать батник что бы открывался диспетчер устройств с развернутой вкладкой порты? Ключей на compmgmt.msc тоже не нашел =( заранее благодарен.
Автор: Mr_Hat
Дата сообщения: 04.03.2009 17:03
Al0ner
На счет портов не скажу, но диспетчер вызывается так
Код: %windir%\SYSTEM32\devmgmt.msc
Автор: Al0ner
Дата сообщения: 04.03.2009 17:47
в том то и дело что нужно чтобы открывались порты

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: как сохранить сетевые настройки


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.