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

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

Автор: KapralBel
Дата сообщения: 22.11.2006 14:47
topic

Код: find /i "Echo Off" *.cmd >Res
Автор: topic
Дата сообщения: 22.11.2006 14:52
KapralBel

не понял зачем, но

Не найден файл: *.cmd

Добавлено:
Если
@Echo Off
Set PATH_POISK="D:\Temp\erer\"

set T_Date=%DATE:~3%

IF %T_DATE:~0,1%==0 (
SET /A T_DAY=%T_DATE:~1,1%) else (
SET /A T_DAY=%T_DATE:~0,2%)

IF %T_DATE:~3,1%==0 (
SET /A T_MONTH=%T_DATE:~4,1%) else (
SET /A T_MONTH=%T_DATE:~3,2%)

SET /A T_YEAR=%T_DATE:~8,2%

SET T_DAY=%T_DAY%.%T_MONTH%.0%T_YEAR%
SET /A notfail=0

FOR %%a IN (%PATH_POISK%\*.*) DO @Call :MY_DEL "%%a" %%~ta
if %notfail%==1 @echo нет файла
GoTo :EOF

:MY_DEL
SET F_DATE=%2
if %F_DATE%==%T_DAY% (echo есть файл %1
) ELSE (
set /A notfail=1
)

то
есть файл "D:\Temp\erer\\BM.txt"
нет файла
Автор: uZver
Дата сообщения: 22.11.2006 15:09
topic
не понял оно работает или нет?
и вообще чего забыл чего такое мы борем
Автор: topic
Дата сообщения: 22.11.2006 15:22
uZver
Батник смотрит в дирректорию, перебирает файлы и ищет с сегодняшней датой, если находит - говорит есть такой, если нет такого, то должен дать ОДНО собщение что нет пока такого. Сейчас в варианте том что выше кидает кучу сообщений
"нет файла
нет файла
нет файла
нет файла
нет файла
нет файла
нет файла
нет файла
нет файла
нет файла "

И так на все файлы что от другой даты
В последнем варианте , если нет файла, то одно сообщение, а если есть то
"есть файл "D:\Temp\erer\\BM.txt"
нет файла"
Автор: KapralBel
Дата сообщения: 22.11.2006 15:42
topic

Цитата:
find /i "Echo Off" *.cmd >Res

искать строку Echo Off в файлах *.cmd и сбросить результат в файл Res
Вместо моих значений подставь свои
Автор: uZver
Дата сообщения: 22.11.2006 16:09
topic

Цитата:
В последнем варианте , если нет файла, то одно сообщение, а если есть то
"есть файл "D:\Temp\erer\\BM.txt"
нет файла"

аааа, млин во как надо флаг надо поднимать если нашли, т.е.
if %F_DATE%==%T_DAY% (
echo есть файл %1
set notfail=1
) ELSE ( вот else не нужен )
а условие
if %notfail%==0 @echo нет файла
Автор: Maza Faka
Дата сообщения: 22.11.2006 16:14
Как скопировать файл в директорию с подпапками имена которых неизвестны, причём скопировать нужно во все существующие папки и вложенные папки? Скажем файл system.cfg в D:\Setup\"несколько подпапок с неизвестными именами"
Автор: uZver
Дата сообщения: 22.11.2006 16:34

Maza Faka
а зачем если не секрет?
а вот такое же уже однажды видел на ПК с трояном? забавно кстати работал


Автор: Desenix
Дата сообщения: 22.11.2006 16:39
topic
до цикла
set res=нет файла

в цикле вместо echo
............. set res=есть файл

в конце
echo %res% %1
Автор: KapralBel
Дата сообщения: 22.11.2006 17:01
Maza Faka
FOR /?
см. FOR /R ...
Автор: topic
Дата сообщения: 22.11.2006 17:05
uZver

СЕНЬКС пашет

KapralBel

Наваял
@Echo Off
Set PATH_POISK="c:\bat\txt\"

FOR %%a IN (%PATH_POISK%\*.sta) DO (
echo %PATH_POISK%
echo %%a
find /i "MC0SJU" %%a% >Res
)

Но в Res попали только из последнего файла строки ?
Автор: KapralBel
Дата сообщения: 22.11.2006 17:18
topic
В этом случае используй не > (одиночный), а двойной >>
Автор: topic
Дата сообщения: 22.11.2006 17:21
KapralBel

ПОШЛО !


uZver

Поменял в
Set PATH_POISK диск на сетевой - и всё , файл есть, а пишет НЕТ
Автор: tolyn77
Дата сообщения: 22.11.2006 17:23
как в батнике можно удалить в файле %windir%\system32\sysoc.inf все HIDE?
Автор: topic
Дата сообщения: 22.11.2006 17:26
KapralBel

А можно как то сделать чтобы файлики анализировались в порядке возрастания времени создания ?

Добавлено:
uZver

Странно на разных машинах по разному - Вообщем спасибо - работает
Дальше сам


FOR %%a и т.д. , а можно как то потом это самое %a в echo кинуть чтоб значение посмотреть, что то не получается , и с "" и с %% и с !! нивкакую


Добавлено:
KapralBel

Если так
@Echo Off
Set PATH_POISK="C:\bat\txt\"

FOR %%a IN (dir /O:D %PATH_POISK%\*.sta) DO (
find /i "MC0SJU" %%a% >>Res
)

то
"Не найден файл: DIR
FIND: Недопустимый ключ"

Но файл создаёт
Автор: Elroir
Дата сообщения: 22.11.2006 20:24
Charm1
Странно - сейчас поставил себе формат даты, как у тебя - все работает.
Ладно - будем проверять дальше. Следующий код будет показывать дату файла и текущую дату. Удалять пока ничего не будет.

Код:
@echo off
setlocal enabledelayedexpansion
FOR %%a IN (C:\1\new\*.xls) DO (
set tmp=%%~ta
set tmp=!tmp:~0,10!
if "!tmp!" NEQ "%DATE%" (
echo fdate="!tmp!" cdate="%DATE%" - delete %%a
)
)
Автор: Maza Faka
Дата сообщения: 23.11.2006 07:10
Как скопировать файл в директорию с подпапками имена которых неизвестны, причём скопировать нужно во все существующие папки и вложенные папки? Скажем файл system.cfg в D:\Setup\"несколько подпапок с неизвестными именами"


Цитата:
а зачем если не секрет?
а вот такое же уже однажды видел на ПК с трояном? забавно кстати работал


Да не трояна мне нужно копировать, а настройки одной игры, а то клиенты уже достали...ПЛЗ выложите кто нибудь готовое решение
Автор: Charm1
Дата сообщения: 23.11.2006 07:46
Elroir
Все дошло!!!! УУУРРРААААА Спасибо!!!!!!!!!!!!!!!!!!!!
Автор: KapralBel
Дата сообщения: 23.11.2006 08:42
topic

Код: @Echo Off
Dir /O:D *.txt /b >Tmp
For /F %%a in (Tmp) Do (
Echo ===================== %%a ======================= >>Result
Type %%a | Find /i "FAR" >>Result
)
Автор: Charm1
Дата сообщения: 23.11.2006 08:58
Автор: Maza Faka
Дата сообщения: 23.11.2006 09:32

Цитата:
Как скопировать файл в директорию с подпапками имена которых неизвестны, причём скопировать нужно во все существующие папки и вложенные папки? Скажем файл system.cfg в D:\Setup\"несколько подпапок с неизвестными именами"


Всё нашёл:
For /R D:\Setup\ %%i in (.) do copy system.cfg %%i


Автор: topic
Дата сообщения: 23.11.2006 10:49
KapralBel

Вот так работает
@Echo Off
Dir /O:D *.txt /b >Tmp
For /F %%a in (Tmp) Do (
find /i "MC0SJU" %%a% >>Res
)

Делает два файла Res Tmp и без ошибок.



Добавлено:
KapralBel

Подкорректировал под себя
@Echo Off
Dir /O:D *.txt /b >Tmp
For /F %%a in (Tmp) Do (
Echo ===================== %%a ======================= >>Result
Type %%a | Find /i "FAR" >>Result
)

Тормознул сразу , свой Find /i вставил - тоже ОК


Добавлено:
А можно как то вывести найденный текстовый файл на экран ?
Т.е. содержание его ???
Автор: KapralBel
Дата сообщения: 23.11.2006 11:02
topic
Type File.txt | More
Автор: ALEF
Дата сообщения: 23.11.2006 18:31
вопрос не совсем по BAT-файлам, но по командам:
как в одной комане задать последовательне выполнение двух команд?

пример из практики:
в cmd.exe даю команду chkdsk C: /R /F
жду пока она завершиться (это 10-30 минут)
потом даю команду chkdsk D: /R /F
и так на каждом копме.
Нужно запускать эти команды одним махом, но не создавая BAT-файл, вот так не работает: chkdsk C: /R /F | chkdsk D: /R /F

Автор: Elroir
Дата сообщения: 23.11.2006 18:41
ALEF

Код: chkdsk C: /R /F & chkdsk D: /R /F
Автор: zyurikz
Дата сообщения: 23.11.2006 19:35
Помогите плз
есть батник

findstr /s "22./11/2006.*DOWNLOAD" *.log >1.txt 'ищет по всем каталогам

нужно сделать поиск по нескольким каталогам
тако типа
findstr /s "22./11/2006.*DOWNLOAD" с:\S1234??\*.log >1.txt
но так не работает
как указать диапазон каталогов S1234??
чтобы искал в S123400 до S123499

Заранее спасибо!
Автор: Elroir
Дата сообщения: 23.11.2006 19:47
zyurikz

Код:
FOR /L %%I IN (400,1,499) DO (
findstr /s "22./11/2006.*DOWNLOAD" с:\S123%%I\*.log >1.txt
)
Автор: Maza Faka
Дата сообщения: 24.11.2006 08:44

Цитата:
как в батнике можно удалить в файле %windir%\system32\sysoc.inf все HIDE?


А можешь написать готовый пример, а то у меня весь текст удаляется...
Автор: petryxa
Дата сообщения: 24.11.2006 10:48
Добрый день
Нужно сделать .bat для закачки файлов на ftp через proxy.
Пробовал Curl.exe (http://curl.haxx.se)
такой .bat не работает.
_________________________________
set ftp_proxy=ftp://192.168.9.3:8021/
start C:\home\curl -T 1.txt ftp://user:pass@192.168.3.13/In/

ftp proxy WinGate

Подскажите где ошибка.

Добавлено:
Добрый день
Нужно сделать .bat для закачки файлов на ftp через proxy.
Пробовал Curl.exe (http://curl.haxx.se)
такой .bat не работает.
_________________________________
set ftp_proxy=ftp://192.168.9.3:8021/
start C:\home\curl -T 1.txt ftp://user:pass@192.168.3.13/In/

ftp proxy WinGate

Подскажите где ошибка.
Автор: ViSiToR
Дата сообщения: 24.11.2006 10:56
Maza Faka

Цитата:
А можешь написать готовый пример, а то у меня весь текст удаляется...

Во-первых, присмотрись к постам которые идут чуть ниже чем приведённый пост by Elroir (и посмотри надпись в шапке темы после слова Важно:). Во-вторых, вот готовый пример :


Код: @echo off
:: Create the assembler program, by Herbert Kleebauer
echo Bj@jzh`0X-`/PPPPPPa(DE(DM(DO(Dh(Ls(Lu(LX(LeZRR]EEEUYRX2Dx=> %temp%.\sbs2.com
echo 0DxFP,0Xx.t0P,=XtGsB4o@$?PIyU!WvX0GwUY Wv;ovBX2Gv0ExGIuht6>> %temp%.\sbs2.com
echo ?@}IKuNWpe~Fpe?FNHlF?wGMECIQqo{Ox{T?kPv@jeoSeIlRFD@{AyEKj@>> %temp%.\sbs2.com
echo iqe~1NeAyR?mHAG~BGRgB{~H?o~TsdgCYqe?HR~upkpBG?~slJBCyA?@xA>> %temp%.\sbs2.com
echo LZp{xq`Cs?H[C_vHDyB?Hos@QslFA@wQ~~x}viH}`LYNBGyA?@xAB?sUq`>> %temp%.\sbs2.com
echo LRy@PwtCYQEuFK@A~BxPtDss@fFqjVmzD@qBEOEenU?`eHHeBCMs?FExep>> %temp%.\sbs2.com
echo LHsPBGyA?@xAunjzA}EKNs@CA?wQpQpKLBHv?s`WJ`LRCYyIWMJaejCksl>> %temp%.\sbs2.com
echo H[GyFGhHBwHZjjHeoFasuFUJeHeB?OsQH[xeHCPvqFj@oq@eNc?~}Nu??O>> %temp%.\sbs2.com
echo ~oEwoAjBKs?Zp`LBzHQzyEFrAWAG{EFrAqAGYwHTECIQ{coKIsaCsf{Oe~>> %temp%.\sbs2.com
echo CK}Ayre~CNFA{rAyEKFACrA{EKGAjbA}eKGSjNMtQFtc{OAyDGFj?{FDGQ>> %temp%.\sbs2.com
echo KAjNVk_OCAx@e?f{o?CosI}1EGizhljJ~H1ZeG}JBA~rACBMDGjjDG@g0>> %temp%.\sbs2.com
:: Use the program
%temp%.\sbs2.com 0 "HIDE" """" < "infile" > "outfile"
:: Delete the program
del %temp%.\sbs2.com

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Сбой активации XP sp2


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