Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Разное - Bat файл. Извлечь часть строковой переменной с двумя процентами

Ответить
Настройки темы
Разное - Bat файл. Извлечь часть строковой переменной с двумя процентами

Новый участник


Сообщения: 40
Благодарности: 0

Профиль | Отправить PM | Цитировать


Доброго времени суток!
Чтобы было нагляднее приведу пример:
For /f "tokens=1" %%i in (test.txt) do (
If %%i:~0,3 == abc echo найдено > 1.txt
)
У меня не работает в чем причина?
Вариант %i:~0,3% успешно находит подстроку abc

Отправлено: 09:44, 21-06-2023

 

Аватара для NickM

Ветеран


Contributor


Сообщения: 4268
Благодарности: 1001

Профиль | Отправить PM | Цитировать


Такая "лапша" отработает правильно?
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion
For /f "tokens=1" %%i in (test.txt) do (
set aa=%%i
set bb=!aa:~0,3!
If !bb! == abc echo найдено >> 1.txt
)
UPD: убрал . после echo

Последний раз редактировалось NickM, 21-06-2023 в 21:11.


Отправлено: 10:18, 21-06-2023 | #2



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

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


Новый участник


Сообщения: 41
Благодарности: 1

Профиль | Отправить PM | Цитировать


Увы, эта " лапша" не работает. Опишу кратко задачу: есть текстовый файл в котором одна из строк начинается на abc. Нужно скопировать все строки расположенные ниже в другой текстовый файл.Буду признателен если кто-то откликнется.

Отправлено: 21:00, 21-06-2023 | #3


Аватара для NickM

Ветеран


Contributor


Сообщения: 4268
Благодарности: 1001

Профиль | Отправить PM | Цитировать


Цитата oleg-k41:
не работает. »
А должна была сработать именно так, как было указано в начальном поcте, но раз задача поменялась, то это уже не имеет значения:

Отправлено: 21:10, 21-06-2023 | #4


Аватара для NickM

Ветеран


Contributor


Сообщения: 4268
Благодарности: 1001

Профиль | Отправить PM | Цитировать


Ищем первое вхождение подстроки, после пропускаем n-ое количество строк:
Код: Выделить весь код
@echo off
setlocal enableextensions enabledelayedexpansion
set /a icount=0
For /f "tokens=1" %%i in (test.txt) do (
set /a icount+=1
set aa=%%i
set bb=!aa:~0,3!
if !bb! == abc call :printfile
)

:printfile
For /f "tokens=* skip=%icount%" %%j in (test.txt) do (
echo.%%j
)
exit
Код не блещет изяществом, конечно - как думал, так и писал

Последний раз редактировалось NickM, 21-06-2023 в 21:53.


Отправлено: 21:33, 21-06-2023 | #5


Аватара для Anton04

Ветеран


Сообщения: 2071
Благодарности: 392

Профиль | Отправить PM | Цитировать


Коллеги, а не переместиться ли Вам в профильную тему?
Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows

-------
Слабый всю жизнь идёт лёгкой дорогой, черта сильного выбрать трудный путь.
Будь осторожен в своих желаниях, ибо они иногда сбываются.


Отправлено: 10:43, 22-06-2023 | #6


Новый участник


Сообщения: 41
Благодарности: 1

Профиль | Отправить PM | Цитировать


Цитата:
как думал, так и писал
Спасибо. вечером попробую.

<img>

Отправлено: 11:46, 22-06-2023 | #7



Компьютерный форум OSzone.net » Программирование, базы данных и автоматизация действий » Скриптовые языки администрирования Windows » Разное - Bat файл. Извлечь часть строковой переменной с двумя процентами

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
CMD/BAT - [решено] Сравнение переменной цикла со строковой переменной NickM Скриптовые языки администрирования Windows 2 17-01-2017 10:28
VBA - vb 6. Передача строковой переменной в shell 666egor666 Программирование и базы данных 3 15-05-2015 13:53
[решено] Получение строковой переменной из параметра запуска скрипта XOBAH AutoIt 2 12-10-2011 22:56
MSFT SQL Server - Использование в хранимой процедуре строковой переменной Delirium Программирование и базы данных 2 18-02-2011 00:53
php деление значения строковой переменной Guest Вебмастеру 4 14-10-2004 17:12




 
Переход