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

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

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Пустых строк и с пробелами тоже нет.
 
Добавлено:
пустых строк нет и знаков всяких и пробелов тоже нет
 
все строки батника это команды добавления и удаления в реестр значений
к примеру
REG ADD "HKCU\Software\microsift\office" /f /v "bilgeits" /t REG_SZ /d "%userprofile%\Application Data\"
 
вот тут и нужно заменить %userprofile% на полный путь.

Всего записей: 30 | Зарегистр. 17-09-2009 | Отправлено: 03:06 13-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
у меня самого не работает не знаю почему - как for работает я тебе объяснил
 
Добавлено:
CompModdd
http://forum.ru-board.com/topic.cgi?forum=5&bm=1&topic=29819&start=1400
САМЫЙ верхний пост сматри

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 03:35 13-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
CompModdd
сделал ноконец то, конечно я все забыл уже. весь изматерился - нашел совершенно случайно. причем делал уже это один раз - так же через пень колоду.

Цитата:
 
ECHO OFF
COLOR 9F
CLS
setlocal enabledelayedexpansion
ECHO OFF> NEWFILE.TXT
FOR /F "EOL= skip=1 delims=*" %%I IN (MYFILE.TXT) DO (
SET NEWSTRING=%%I
ECHO NEW!NEWSTRING:~3!>> NEWFILE.TXT
)
PAUSE
 

где - MYFILE.txt это твой файл REG НУ или изначальный файл
3 - это количество знаков которое надо откинуть с начала каждой строки, мне не известно оно всегда одинаковое или все же другие критерии обрезания.
NEW это текст который нужно добавить вместо обрезанного в начало
ECHO OFF> NEWFILE.TXT  эта строка для отладки использовалась чтоб файл стирался получаемый с начала при каждом испытании - ее можно стереть
"EOL=  это пропускать строки начинающиеся с пробела или пустые строки если не надо выкинь
skip=1 это пропускать 1 строку сверху - не надо выкинь
delims=* это знак разделения строки, так как по умолчанию это пробел и ТАБ , а в твоих строках наверняка будут пробелы то строки будут считываться с начала строки до первого пробела, а * не используется в путях и именах файлов так что скорее всего ее у тебя не будет в строках, ну если будет то другой знак придумай, выкинуть это нельзя
NEWFILE.TXT эта новый файл отредактированный
NEWSTRING ну это просто переменная без нее скорее всего тоже можно обойтись но мне уже лень делать дальше
а эта  setlocal enabledelayedexpansion  вот такая штукенция которая позволяет менять значение переменных внутри цикла если использовать вместо % !.
PAUSE ну эта пауза она тебе наверно не нужна будет - выкинь
ECHO OFF эта чтоб служебные сообщения не выводились на екран
COLOR 9F эта чтоб цвет окошка был повеселее а не траурный
CLS это очистка экрана
результат работы батника вот из ьакого фала  

Цитата:
 
111111111111111
222222222222222
333333333333333
444444444444444
555555555555555
666666666666666
 777777777777777
888888888888888
999999999999999
 

получаеца такой

Цитата:
 
NEW222222222222
NEW333333333333
NEW444444444444
NEW555555555555
NEW666666666666
NEW888888888888
NEW999999999999
 

единички выкинулись из за скип 1, а семерки из за пробела в начале строки

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 10:54 13-01-2010 | Исправлено: bomzzz, 11:07 13-01-2010
tanichkabanichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Здравствуйте. Извините меня за плохой русский. Я из Болгарии.
У нас есть очень распространенный вирус, который передается через Skype.
Я стараюсь делать сценария для удаления файлов. Проблема в том, что каждый компьютер файлы с различными расширениями. До сих пор я собрала более 110.
 
Было бы лучше спросить, прежде чем удалить файл и создать список удаленных файлов. Эти скрытые файлы, системные, только для чтения. Необходимо изменить их атрибуты. Файлы расположены по всему жесткому диску
 
: (    Пожалуйста, помогите!!!
 
Спасибо!

Всего записей: 17 | Зарегистр. 14-01-2010 | Отправлено: 04:26 14-01-2010 | Исправлено: tanichkabanichka, 04:35 14-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanichkabanichka
достаточно рискованно удалять файлы автоматически. какие критерии у файлов которые ты собираешься удалить? не ужели нет антивирусных утилит готовых? какое название этого вируса???
 
http://www.drweb.com/
ftp://ftp.drweb.com/pub/drweb/cureit/launch.zip
 
http://translate.google.ru/
доста рисковано да изтриете файлове автоматично. какви критерии са файлове, които започваш да изтриете това? Със сигурност там не е антивирусна комунални услуги Готов ли си? какво е името на този вирус?
 
http://www.fcenter.ru/online.shtml?articles/software/utilities/4988
Attribute Changer - программа для изменения свойств файлов и папок, включая файловые атрибуты, дату и время: создания, изменения и доступа, а также атрибут сжатия на NTFS.
 
вот такая команда удаляет скрытые файлы, для чтения, с скрытым атрибутом (системные) без вопросов причем
del AUTOEXEC.BAT /f /q /a

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 05:21 14-01-2010 | Исправлено: bomzzz, 07:37 14-01-2010
vitrzn



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Помогите!
частенько использую такой код
for /f "tokens=*" %%i in ('dir /b /s *.bmp') do copy "%%i"  
(т.е. копирование идёт в ту папку откуда запущен батник)
а уж потом их перемещаю согласно маске
 
а можно сделать так чтобы шел поиск файлов *.bmp а при их нахождении шло копирование в папку "C:\temp" , без промежуточного копирования ?
 
т.е. упростить батник !

Всего записей: 1465 | Зарегистр. 28-10-2007 | Отправлено: 09:54 14-01-2010
tanichkabanichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz  
 
Спасибо. Наша вируса  Win32Chydo .... Но новая версия
Дополнительные расширения я проверила . Безвредные для удаления.
 
Пожалуйста, помогите!!!

Всего записей: 17 | Зарегистр. 14-01-2010 | Отправлено: 11:23 14-01-2010 | Исправлено: tanichkabanichka, 13:37 14-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanichkabanichka
я не знаю че это за вирус - ты подробно и конкретно сформулируй задачу - вот с такого диска надо удалить файлы вот по таким критериям.  
http://www.kaldata.com/forums/index.php?showtopic=145144
http://www.kaspersky.ru/viruswatchlite?search_virus=Win32.Chydo&x=0&y=0&hour_offset=3

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 14:20 14-01-2010
tanichkabanichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bomzzz
 
У меня есть текстовый файл с одним из расширений, которые создают вирусы.
Мне нужен скрипт для поиска на жестком диске, и если находит файл с таким расширением, чтобы спросить меня, могу ли удалить его. И, наконец, заработать мне список удаленных файлов.  
Да, ета вируса .... Есть много тем, в www.kaldata.com.

Всего записей: 17 | Зарегистр. 14-01-2010 | Отправлено: 15:10 14-01-2010 | Исправлено: tanichkabanichka, 15:14 14-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanichkabanichka
по расширению врдли удасться отсортировать вирусные продукты  
http://www.kaldata.com/forums/index.php?showtopic=145144
вот по этой ссылке вроде пишут что расширения могут быть разные и файлов с такими расширениями много на компьютере.
мы правильно понимает друг друга? расширение .DLL или .JPG три буквы после точки

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:13 14-01-2010
tanichkabanichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Разширение каждый раз разные. В текстови файл много от эта.
 
bqb
bvu
rbs
qiv
wiv
czr
flr
ldv
yrk
led
vir
fyf
hpo
oyq
pao
jyl
tuf
ilx
kfa
uro
ayg

Всего записей: 17 | Зарегистр. 14-01-2010 | Отправлено: 15:29 14-01-2010 | Исправлено: tanichkabanichka, 15:30 14-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
похоже расширения случайным образом генерируются чтоб усложнить удаление.
 
а какая дата создания у всех этих файлов??? это может быть критерием????

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 15:33 14-01-2010
tanichkabanichka

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Я сделала этот скрипт. Но это 140 строк не красиво. И я не знаю, как это сделать, наконец вытащить список удаленных файлов.
 
FOR /F "tokens=*" %%P IN ('dir C:\*.pnm /b/s/a') DO attrib -a -h -r "%%P" & del /p "%%P"

Всего записей: 17 | Зарегистр. 14-01-2010 | Отправлено: 15:40 14-01-2010
bredonosec



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
вопрос,  
а можно ли батником как-то положить файл в активный профиль на удаленную машину?  
Вот, напр, есть контора, есть лист машин (формируется батником), на каждой (почти) по нескольку разноименных профилей. Положить надо в активный. Тот, под которым работают.  
Такое можно?  
 
 
Или тогда как-то класть во все имеющиеся? Что-то вроде
 
set FTMP=N:/Documents and settings/ (а как юзерпрофайл переменной описать?)
 
dir /b  >%FTMP%
if exist %FTMP% for /f "tokens=*" %%i in ('dir /b') do findstr /i /c:"%%~ni" %FTMP% || echo %%~ni%%~xi >>%FTMP%
if not exist %FTMP% goto EXIT
 
? Или как-то иначе?  


----------
Вопрос: 'Что человек курит?' как правило возникает не когда ты слышишь, как он дышит, а когда видишь, что он пишет
Пропеллер играет роль вентилятора, он останавливается -пилот потеет
Аськи нету.

Всего записей: 16257 | Зарегистр. 13-02-2003 | Отправлено: 16:53 14-01-2010
mugil_cephalus

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tanichkabanichka
for /?
......  
%~xI        - из переменной %I выделяется расширение имени файла
------------------------
del /?
............
/P          Запрос на подтверждение перед удалением каждого файла.
------------------------
/A          Отбор файлов для удаления по атрибутам.
атрибуты    S  Системные файлы       R  Доступные только для чтения
            H  Скрытые файлы         A  Файлы для архивирования
            Префикс "-" имеет значение НЕ
 

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


Код:
for ... do del /p %%i &if not exist %%i (echo %%i)>>remlist.txt 2>&1

 
bomzzz
создать пустой файл?? 0 Kb?  

Код:
0>nul 2>nul 1>file.EXT set /p=""

Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 19:36 14-01-2010 | Исправлено: mugil_cephalus, 19:39 14-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
нет файл заданного размера состоящий из нулей системными средствами
 
нулевого размера проще пареной репы - echo off> ZeroFile.My

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:46 14-01-2010 | Исправлено: bomzzz, 19:50 14-01-2010
mugil_cephalus

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
bredonosec
активный - %USERPROFILE%
или все -  

Код:
wmic useraccount where status="OK" get Name /value

 
Добавлено:
bomzzz
а просто echo 00000000 >file ?

Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 19:49 14-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mugil_cephalus
не знаешь как через вми изменить у записи в реестре статус только для чтения? может проще есть возможность?
 
неееее - так получится файл записанный асци кодами нуля и одним пробелом

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 19:54 14-01-2010 | Исправлено: bomzzz, 20:14 14-01-2010
mugil_cephalus

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

Код:
@echo off
for /d %%a in ("%SystemDrive%\Documents and Settings\*") do call:_1 "%%a"
pause
 
:_1
set "var=%~1"
if /i "_%var:~-9%" neq "_All Users" echo %var%
goto:eof
 

все профили
 
Добавлено:
bomzzz

Цитата:
неееее - так получится файл записанный асци кодами нуля и одним пробелом

вот так http://forum.ru-board.com/topic.cgi?forum=62&topic=6156&start=23&limit=1&m=1#1 (по аналогии - zero hex code ставь )
 
вместо echo - можно код: 0>nul 2>nul 1>>file.EXT set /p="0f 2e" (пишет "0f 2e" hexcode и не добавляет CR/LF )  
 
кажется так (один двоичный ноль)
0>nul 2>nul 1>>file.bin set /p="0 0 0 0"
 
вот код кажется от igor_andreev
@ECHO OFF
ECHO N BEEP.COM>BEEP.SCR
ECHO E 0100 B0 07 CD 29 C3>>BEEP.SCR
FOR %%A IN (RCX 0005 W Q) DO ECHO %%A>>BEEP.SCR
DEBUG<BEEP.SCR>NUL
DEL BEEP.SCR
делает beep.com file

Всего записей: 1072 | Зарегистр. 07-09-2009 | Отправлено: 20:15 14-01-2010 | Исправлено: mugil_cephalus, 20:55 14-01-2010
bomzzz



Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
mugil_cephalus
вот это номер - был убежден что батники только с текстом умеют - ниче понять не могу как ета работкаит
ха. врубился. потом этот текст ассемблируется дебугером. гыгы

Всего записей: 13343 | Зарегистр. 13-01-2008 | Отправлено: 20:51 14-01-2010 | Исправлено: bomzzz, 20:56 14-01-2010
   

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