PDA

Показать полную графическую версию : [решено] запись имён файлов в txt-ник


Airin
19-07-2011, 12:29
Здравствуйте!
Проблема по идее просто решаема, но у меня почему-то не получается...

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

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

megaloman
19-07-2011, 12:49
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
Спасибо большое!

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

megaloman
19-07-2011, 13:09
Первый вариант (там и батник не нужен) перезапишет текстовый файл (я его скорректировал)

Airin
19-07-2011, 13:10
всмысле, батник не нужен?

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

Airin
19-07-2011, 13:14
простым пользователям лучше батник оставить, а то кто ж разберётся, что писать в комстроке?=)

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

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

sov44
20-01-2012, 00:31
Подскажите, почему два раза идёт запись в текстовый файл?
...
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
Скрипт пишет в текстовый файл установленные в системе обновления 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
Сделал как-то так:
@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




© OSzone.net 2001-2012