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

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

HollywooD-new 13-08-2013 16:51 2200849

вывод диапазона строки
 
Стоит задача: из файла 1.txt выбрать значения строк которые находятся в квадратных кавычках [] и записывать их в другой файл
пример файла:
авс
123
[000]
dsa
[001]
qw1

получается только скопировать значения построчно из одного файла в другой, но вот как обратится к элементу строки не могу разобраться)
Код:

Set file=1.txt
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do echo %%i >> test.txt
pause

либо использовать условие но при этом вся строка должна совпадать полностью
Код:

Set file=1.txt
For /F "usebackq tokens=* delims=" %%i In ("%file%") Do (IF %%i == 123 (  echo %%i >> test.txt ))
pause


Iska 13-08-2013 17:08 2200860

Цитата:

Цитата HollywooD-new
пример файла: »

Это пример исходного файла. Каким должен получаться результирующий файл на основе этого исходного?

HollywooD-new 13-08-2013 17:17 2200866

я хочу получить в файле text.txt
000
001

Iska 13-08-2013 17:42 2200884

HollywooD-new, например, так:
читать дальше »
Код:

@echo off
setlocal enableextensions enabledelayedexpansion

set sSourceFile=%~1

if defined sSourceFile (
        if exist "%sSourceFile%" (
                set sDestFile=%~dp0text.txt
               
                >"!sDestFile!" (
                        for /f "usebackq delims=[]" %%i in (
                                `type "%sSourceFile%" ^| findstr.exe /r /c:".*\[.*\].*"`
                        ) do (
                                echo.%%i
                        )
                )
        ) else (
                echo Source file [%sSourceFile%] not found.
        )
) else (
        echo Usage: %~nx0 ^<Source file^>
)

endlocal
exit /b 0


Просто перетащите исходный файл на созданный пакетный файл.

HollywooD-new 13-08-2013 17:50 2200890

не совсем понятно, что вы имеете ввиду.

код работает спасибо)

Iska 13-08-2013 19:45 2200957

Цитата:

Цитата HollywooD-new
не совсем понятно, что вы имеете ввиду. »

Перетаскивание, drag-n-drop: Some Vision.avi (кодек: TSCC Codec).

megaloman 14-08-2013 00:38 2201107

Код:

@Echo Off

Set "FileName=txt.txt"
Set "FileName2=txt2.txt"

Del "%FileName2%" 2>Nul

SetLocal EnableExtensions EnableDelayedExpansion

FOR /F "tokens=1 usebackq delims=]" %%s in ("%FileName%") do (
        Set "String=%%s"
        Set "String=!String:*[=!"
        If Not !String!==%%s Echo !String!>>"%FileName2%"
)



Время: 20:06.

Время: 20:06.
© OSzone.net 2001-