Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] запись имён файлов в txt-ник (http://forum.oszone.net/showthread.php?t=211445)

Airin 19-07-2011 12:29 1715558

запись имён файлов в txt-ник
 
Здравствуйте!
Проблема по идее просто решаема, но у меня почему-то не получается...

Нужно написать батник, который будет в столбик записывать все файлы с расширением .dbf в текстовик.

dbf-ки лежат в папке "ARH", батник и текстовик должны быть на каталог выше.

megaloman 19-07-2011 12:49 1715581

Код:

dir /b /A:-D ARC\*.dbf >dbf.txt
Код:

@Echo Off
FOR %%i IN (ARC\*.dbf) DO Echo %%~nxi >>dbf.txt


Airin 19-07-2011 12:59 1715593

Спасибо большое!

а как сделать, чтобы сначала очищался txt-ник, а потом всё записывалось? (просто базы добавляться будут)

megaloman 19-07-2011 13:09 1715604

Первый вариант (там и батник не нужен) перезапишет текстовый файл (я его скорректировал)

Airin 19-07-2011 13:10 1715605

всмысле, батник не нужен?

megaloman 19-07-2011 13:12 1715608

В смысле, что можно одну строчку набрать из командной строки. Но если хочется батник - почему бы нет? Поместите эту строку в батник

Airin 19-07-2011 13:14 1715609

простым пользователям лучше батник оставить, а то кто ж разберётся, что писать в комстроке?=)

это потом для выполнения программы понадобится.

Спасибо за помощь

sov44 20-01-2012 00:31 1840047

Подскажите, почему два раза идёт запись в текстовый файл?
...
d:\Новая папка\MS_OFFICE_2010_SP1\Updates\KB2553092-targetdir-x-none.msp
d:\Новая папка\MS_OFFICE_2010_SP1\Updates\KB2553096-oartconv-x-none.msp
d:\Новая папка\MS_OFFICE_2010_SP1\Updates\KB2553181-msores-x-none.msp
....
d:\Новая папка\MS_OFFICE_2010_SP1\Updates\KB2553092-targetdir-x-none.msp
d:\Новая папка\MS_OFFICE_2010_SP1\Updates\KB2553096-oartconv-x-none.msp
d:\Новая папка\MS_OFFICE_2010_SP1\Updates\KB2553181-msores-x-none.msp
...
Код:

@echo off
set "sDir=d:\Новая папка\MS_OFFICE_2010_SP1"
set "ras=*.msp"
chcp 1251 >nul

for /r "%sDir%" %%a in (.) do (
    for /f "delims=" %%d in ('dir /b/s/a-d "%%~dpna\%ras%" 2^>nul') do (
>>filelist.txt Echo %%d
)
  chcp 866 >nul
)
pause


sov44 14-11-2012 10:40 2025379

Скрипт пишет в текстовый файл установленные в системе обновления Microsoft office.
Подскажите, как поправить скрипт, чтобы исключить вывод дублей в текстовый файл.
Код:

@ECHO OFF
setlocal enabledelayedexpansion

if exist Inst_Update.txt del /q Inst_Update.txt
:: Формируем список установленных в системе обновлений Office 2010
SET UNISTALL=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products
FOR /f "tokens=10 delims=\" %%a IN ('reg query "%UNISTALL%" ^|FIND /I "00004109"') DO (
FOR /f "tokens=12 delims=\" %%b IN ('reg query "%UNISTALL%\%%a\Patches"') DO (
FOR /f "tokens=1-3" %%c IN ('reg query "%UNISTALL%\%%a\Patches\%%b" 2^>nul ^| FIND /I "MoreInfoURL"') DO (
FOR /f "tokens=4 delims=/" %%g IN ("%%e") DO (
>>Inst_Update.txt ECHO KB%%g
))))
exit

:help:

sov44 15-11-2012 07:09 2025838

Сделал как-то так:
Код:

@ECHO OFF
setlocal enabledelayedexpansion

SET UNISTALL=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Products
FOR /f "tokens=10 delims=\" %%a IN ('reg query "%UNISTALL%" ^|FIND /I "00004109"') DO (
FOR /f "tokens=12 delims=\" %%b IN ('reg query "%UNISTALL%\%%a\Patches"') DO (
FOR /f "tokens=1-3" %%c IN ('reg query "%UNISTALL%\%%a\Patches\%%b" 2^>nul ^| FIND /I "MoreInfoURL"') DO (
FOR /f "tokens=4 delims=/" %%g IN ("%%e") DO (
Set Update=!Update!:%%g:
Set %%g=UpdateSorting
))))
For /F "tokens=1 delims==" %%P In ('Set^|Sort^|Find "UpdateSorting"') Do Echo KB%%P>>Inst_Update.txt



Время: 03:25.

Время: 03:25.
© OSzone.net 2001-