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
|
Это пример исходного файла. Каким должен получаться результирующий файл на основе этого исходного?
|
HollywooD-new |
13-08-2013 17:17 2200866 |
я хочу получить в файле text.txt
000
001
|
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 |
не совсем понятно, что вы имеете ввиду.
код работает спасибо)
|
Цитата:
Цитата HollywooD-new
не совсем понятно, что вы имеете ввиду. »
|
Перетаскивание, drag-n-drop: Some Vision.avi (кодек: TSCC Codec).
|
Код:
@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.
© OSzone.net 2001-