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

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

Автор: 01MDM
Дата сообщения: 26.11.2009 20:57
zepterman
Служба называется Spooler:

Код:
Echo OFF
Cls
Net STOP Spooler
PushD C:\Windows\system32\spool\PRINTERS && RD /s /q . 2>nul
PopD
Net START Spooler
Автор: zepterman
Дата сообщения: 26.11.2009 21:20
2 01MDM, большое спасибо, работает!!!
Автор: wolf0425
Дата сообщения: 26.11.2009 22:31

Цитата:
PushD C:\Windows\system32\spool\PRINTERS && RD /s /q . 2>nul
PopD
а чем это лучше тривиального del /s/q C:\Windows\system32\spool\PRINTERS ??
Автор: 01MDM
Дата сообщения: 26.11.2009 22:37
wolf0425

Цитата:
а чем это лучше тривиального del /s/q C:\Windows\system32\spool\PRINTERS ??

А какая разница? Вопрос был скорее в названии службы.
Автор: BVV63
Дата сообщения: 27.11.2009 06:58
Приветствую всех. Есть пара задач, в одной удаляются файлы, которых нет в списке, в другой - каталоги. Всё это я вполне решаю посредством полдюжины вложенных If. Но, чисто для эстетики, нельзя ли это выполнить через For... In... Do...? Пытался честно поскрипеть мозгами, но чёй-то ничего в голову не приходит.
Автор: mouser
Дата сообщения: 27.11.2009 07:00
BVV63
как у тебя выглядит через if ???
Автор: BVV63
Дата сообщения: 27.11.2009 07:31
mouser
Так:

Код:
For %%A In ('Dir /A-D /B *.*') Do (
If /I "%%A" NEq "File1" (
If /I "%%A" NEq "File2" (
If /I "%%A" NEq "File3" (
If /I "%%A" NEq "File4" (
If /I "%%A" NEq "File5" (
Del /A- /F /Q "%%A"
))))))
Автор: mouser
Дата сообщения: 27.11.2009 09:12
в скрипте не помогу а на счет
Цитата:
средствами самой ОС
вроде нужно вызвать %date% но предварительно поковыряться в региональных настройках ... там как раз можно задать как ты хочешь увидеть переменную date
Автор: BVV63
Дата сообщения: 27.11.2009 09:26
Ещё есть вопрос. Как обрезать переменную сзади, не зная наперёд её длину? Собственно, задача - получить размер диска и сравнить со свободным пространством (т. е. выяснить, сколько процентов свободного пространства на диске). Set /A, зараза, работает только со значениями до 2^32. Вот и нужно обрезать переменную (скажем, убрать сзади 3 символа, т. е. разделить на 1000).
Автор: 01MDM
Дата сообщения: 27.11.2009 09:47
mouser

Цитата:
как получить день недели системными средствами



Код:
@echo off
setlocal

set "exec=wmic path win32_LocalTime get DayOfWeek /value"
for /f "tokens=2 delims==" %%i in ('%exec%') do set "day=%%i"
set /a day+=1
for /f "tokens=%day%" %%i in ("Вск Пон Втр Срд Чет Пят Суб") do echo %%i
Автор: NIKZZZZ
Дата сообщения: 27.11.2009 09:56
BVV63

Цитата:
Как обрезать переменную сзади

В справке пр Set (Set /?)
Автор: mugil_cephalus
Дата сообщения: 27.11.2009 13:22
BVV63

Цитата:
Вот и нужно обрезать переменную (скажем, убрать сзади 3 символа,

set "var=%var:~0,-3%"
Автор: avkorets
Дата сообщения: 27.11.2009 18:22
Ребят нужна помощь по awk.
mawk.exe -f скрипт.awk file1
обрабатывается файл file1 скриптом скрипт.awk
а как мне передать в тело скрипта для его обработки файл file2?
(т.е. по типу mawk.exe -f скрипт.awk file1 file2)
(см. тело скрипта).

Код:
$7 ~ /[0-3][0-9]\.[01][0-9]\.20[01][0-9]/ {
f_name = substr($7,9,2) substr($7,4,2) substr($7,1,2)
}

/^(0[35]6|040| и т.д.)/ {
sub("\,",".",$NF)
sub("0+$","",$NF)
rate = $NF / $3
sub("^0.",".",rate)
print $1 " " rate " 0 0 0 0 " $3 " 810 0 0 0 0 " $NF " no" > f_name
}
Автор: slech
Дата сообщения: 27.11.2009 21:16
поскажите пожалуйста - как проделать одно и тоже действие от 1 до 31 ? т.е. по дням недели
нужно обработать 31 файл за месяц

Цитата:

set d=01
set m=11
::
"C:\Program Files\Log Parser 2.2\logparser.exe" file:Apps.sql -i:CSV -o:chart -charttype:line -groupsize:647x400 -headerrow:off

1102
1103
как изменять d в пределах 01-31.
спасибо.
Автор: cluster
Дата сообщения: 27.11.2009 21:33
Есть ли возможность набор команд FTP (ftp.exe) выполнить из батника.. окромя команды ftp -s:c:\set.txt?
Автор: 01MDM
Дата сообщения: 27.11.2009 22:57
cluster

Цитата:
Есть ли возможность набор команд FTP (ftp.exe) выполнить из батника.. окромя команды ftp -s:c:\set.txt?

Ругнется, но выполнит, как пример:

Код:
@echo off
ftp -s:%~nx0 -A ftp.mozilla.org
exit /b

cd pub/addons/10
get adblock-0.5.2.055-fx+fl+mz+ns.xpi
bye
Автор: ikif
Дата сообщения: 28.11.2009 00:57
Пару вопросов по команде Robocopy :
1. /B - Что это за режим архивирования , и зачем он нужен (а что если без него) ?
2. Надо ли /COPYALL для резервирования файлов (не системы)?
3. /XF , /XD - как вписать несколько папок и файлов для исключения ?
4. /XJ - Что за точки соединения , о чем речь ?

Надо скопировать несколько папок с разных дисков на сьемный диск.
Пока получилось так :
robocopy "C:\MyProgram" "D:\Back" /E /B /TEE /V /R:10 /W:30 /NP /NS /COPYALL /LOG:"C:\CopyGames.Log"

Что лишнее, что добавить ? /MIR специально не добавил.

И вот еще , как запускать в Виндоус 7 двойным кликом ? (Приходиться запускать от Админа).
Автор: vigogne
Дата сообщения: 28.11.2009 11:34
Подскажите пожалуйста решение такой задачи:
Есть папка с подпапками, в каждой из которых находятся .reg-файлы (гейм-клуб).
Файлов уже около 50-ти. Руками бегать по всем файлам и тыкать - полдня уходит, решил автоматизировать. Пока знаний хватило, чтобы создать cmd-файл со строчками типа regedit /s folder\regfile.reg. Но состав файлов и папок со временем меняется. Знаю, что можно это все сделать парой строк, но пока не могу понять как.
Прошу помощи.
Автор: 01MDM
Дата сообщения: 28.11.2009 11:43
vigogne

Код:
@echo off
for /f "tokens=*" %%i in ('dir /b /s /a "Folder\*.reg"') do regedit /s "%%i"
Автор: maxxx_12345
Дата сообщения: 28.11.2009 12:12
Требуется перебирать pppoe аккаунты (с именами от 0 до 8) до успешного подключения (можно сказать, нелегально ) Просматривать почти 700 листов ваших сообщений нереально, да и поиск чё-то ничего вразумительного не даёт. Чувствую, что затык в какой-то мелочи.
Подскажите, что делаю не так:


Код:
:start
set %i%=0
:loop
rasdial %i%
if ERRORLEVEL == 0 break
if %i% == 8 goto start
%i%=%i%+1
goto loop
break
Автор: wolf0425
Дата сообщения: 28.11.2009 12:21
maxxx_12345
Цитата:
Подскажите, что делаю не так:
да почти всё )
set i=0
что по твоему делает break ?
set /a i+=1
Автор: maxxx_12345
Дата сообщения: 28.11.2009 12:26
ну насколько я понимаю, break для выхода из пакетного файла.
А вот насчёт установки переменных - тут ваще алес: нигде не написано, какие они должны быть... как их устанавливать и как использовать... поэтому писал наобум

Добавлено:
Подправил, стало:


Код:
@break on
@echo on
:start
set /a i=0
:loop
@echo %i%
rasdial %i%
if ERRORLEVEL == 0 break
if %i% == 8 goto start
set /a i+=1
goto loop
break
Автор: vigogne
Дата сообщения: 28.11.2009 13:39
01MDM
Огромное, человеческое спасибо! Действительно, все гениальное просто! )
Автор: s1nfrompvl
Дата сообщения: 28.11.2009 18:51
и снова здрасте.. пишу новый скрипт для автоматизации своей работы...

в общем есть переменная %var1%
с помощью команды %var1:~1,-1%
я могу отрезать первый и последний символ.. это хорошо.. НО как мне отрезать нужное кол-во символов если они храняться в других переменных..
например %num_begin% и %num_end%
вариант с
%var1:~%num_begin%,%num_end%%, конечно не прокатывает..

пробовал через setlocal enabledelayedexpansion и знаки !, тоже чтото не получилось
вот пример:

Код:
setlocal enabledelayedexpansion
set test=qwerty
set One=1
set Two=-1
set test2=%test:~!One!,!Two!%
echo %test%
echo %test2%
Автор: 01MDM
Дата сообщения: 28.11.2009 19:37
s1nfrompvl

Код:
set test2=!test:~%One%,%Two%!
Автор: s1nfrompvl
Дата сообщения: 29.11.2009 06:17
01MDM, спасибо большое.. ^__^..
Автор: batniki
Дата сообщения: 29.11.2009 19:08
Подскажите, как выполнить все exe файлы в папке и в подпапках?
Автор: king_stiven
Дата сообщения: 29.11.2009 19:13
batniki
Тебе не пора ли самому сообразить? Кажется тебе постоянно пишем.
Автор: batniki
Дата сообщения: 29.11.2009 19:27
king_stiven, не обессудьте, крайне неудобный поиск и навигация по сообщениям... Спасибо за то, что помогаете)
Автор: wolf0425
Дата сообщения: 29.11.2009 19:58

Цитата:
не обессудьте, крайне неудобный поиск и навигация по сообщениям..
Какая нафигация?
кто-то виноват что ты искать браузером в пределах одной простыни (версия для печати) не научился?
и прочти наконец for /? и dir /?

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778

Предыдущая тема: во вкладке автозагрузка


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