Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 529
1

Через find получить в переменную текст после искомого

21.07.2023, 09:58. Показов 608. Ответов 7
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Поиск в выдаче программы FFprobe и получение переменной из обозначения формата - 3-4 знаков после Audio: . Для простоты в команде сам текст. Имею 'Непредвиденное появление: |'. Для текста после искомого надо нечто вроде "tokens=2 delims= "?
Windows Batch file
1
for %%C in ('Audio: aac |find "Audio: "') do echo %%C
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.07.2023, 09:58
Ответы с готовыми решениями:

Используя Find получить найденный текст
Доброго времен суток. Есть текст в ворде. Там вставки Игрок-1, Игрок-2, Игрок-3 и т.д. Задача...

Получить текст в переменную
http://api.good-proxies.ru/get.php?type%5Bhttp%5D=on&type%5Bhttps%5D=on&count=0&ping=5000&country=al...

Как получить текст из textBox в переменную?
В задаче требуется реализация авторизации пользователя. Можно ли как-то из поля пароль/логин...

Записать в переменную текст после @
Добрый день! Прошу помочь с макосом word, нужно записать в переменную 4 символа после @(после...

7
3159 / 1086 / 489
Регистрация: 29.05.2016
Сообщений: 4,510
21.07.2023, 10:17 2
Windows Batch file
1
for %%C in ('echo Audio: aac ^|find "Audio: "') do echo %%C
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 529
28.07.2023, 13:30  [ТС] 3
Знак ^ устранил ошибку. Удалось получить буквальный текст в переменную.
Windows Batch file
1
for /f "usebackq tokens=2 delims= " %%C in ('Audio: aac ^|find "Audio: "') do echo %%C
A c выдачей FFprobe так find не работает.
Windows Batch file
1
2
3
set File=
set FFprobe=FFprobe -hide_banner
for /f "tokens=2 delims= " %%C in ('%FFprobe% "%File%" ^|find "Audio: "') do echo %%C
0
3159 / 1086 / 489
Регистрация: 29.05.2016
Сообщений: 4,510
28.07.2023, 14:03 4
Masutin, а так:
Windows Batch file
1
2
3
set File=
set "FFprobe=FFprobe -hide_banner"
for /f "tokens=2 delims= " %%C in ('%FFprobe% "%File%" ^|find "Audio: "') do echo %%C
1
2091 / 667 / 284
Регистрация: 26.03.2022
Сообщений: 1,252
Записей в блоге: 1
28.07.2023, 15:48 5
Masutin,
Три варианта
Windows Batch file
1
2
3
4
5
6
7
8
@echo Off &Cls
    Set "File=Z:\Box_In\тра ля ля.txt" 
rem Set "FFprobe=FFprobe -hide_banner"
    Set "FFprobe="More.com" /P /C"
 
    For /F "usebackq tokens=2 delims= " %%C In (`"%FFprobe% "%File%" |Find /I "Audio: ""`) Do Echo %%C
Pause
Exit /B
Windows Batch file
1
2
3
4
5
6
7
8
9
10
@echo Off &Cls
    Set "File=Z:\Box_In\тра ля ля.txt" 
    Set "txt=Audio: "
 
    Set "FFprobe="More.com" /P /C"
rem Set "FFprobe=FFprobe -hide_banner"
 
    For /F "usebackq delims=" %%C In (`"%FFprobe% "%File%" |Find /I "%txt%""`) Do Set "Out=%%C" &Call Echo %%Out:*%txt%=%%
Pause
Exit /B
Windows Batch file
1
2
3
4
5
6
7
8
9
@echo Off &Cls
    Set "File=Z:\Box_In\тра ля ля.txt" 
    Set "FFprobe="More.com" /P /C"
rem Set "FFprobe=FFprobe -hide_banner"
 
    For /F "usebackq delims=" %%C In (`"%FFprobe% "%File%" |Find /I "Audio: ""`) Do Set "Out=%%C" &Call Set "%%Out:: ==%%"
    Echo %Audio%
Pause
Exit /B
FFprobe для отладки заменил на More c обработкой текстового файла, в котором есть "Audio: "
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 529
30.07.2023, 06:49  [ТС] 6
Работают все 3, но не c текстoм от FFprobe. Испытайте c простейшим Вариантом 1.
Код
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'Audio.m4a':
  Metadata:
    major_brand     : M4A
    minor_version   : 512
    compatible_brands: M4A isomiso2
    encoder         : Lavf59.12.100
  Duration: 00:01:00.08, start: 0.000000, bitrate: 32 kb/s
  Stream #0:0[0x1](und): Audio: aac (HE-AACv2) (mp4a / 0x6134706D), 24000 Hz, stereo, fltp, 31 kb/s (default)
0
2091 / 667 / 284
Регистрация: 26.03.2022
Сообщений: 1,252
Записей в блоге: 1
30.07.2023, 08:16 7
Masutin,
Windows Batch file
1
2
3
4
5
6
7
8
9
10
11
12
@echo Off &Cls
    Set "File=Z:\Box_In\тра ля ля.txt" 
    Set "txt=Audio: "
 
    Set "FFprobe="More.com" /P /C"
rem Set "FFprobe=FFprobe -hide_banner"
 
    For /F "usebackq delims=" %%C In (`"%FFprobe% "%File%" |Find /I "%txt%""`) Do Set "Out=%%C" &Call Set Out=%%Out:*%txt%=%%
    For /F "delims= " %%C In ("%Out%") Do Set "Out=%%C"
Echo %Out%
Pause
Exit /B
А лучше бы Вы приложили файл с выдачей работы FFprobe, FFprobe случаем не выдаёт текст в UTF-8?
Например: >"тра ля ля.txt" FFprobe -hide_banner "Ваш файл"
1
948 / 403 / 323
Регистрация: 12.07.2018
Сообщений: 529
31.07.2023, 14:09  [ТС] 8
Работает, c содержимым выдачи FFprobe в файле txt, но не при передаче от FFprobe к Find. И в файл через > не сохраняет. He UTF.
Узнал опции FFprobe для выдачи нужного значения без поиска. Цель достигнута. Спасибо!
0
31.07.2023, 14:09
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
31.07.2023, 14:09
Помогаю со студенческими работами здесь

Как получить текст из Edit в переменную INT [C++]
Помогите пожалуйста. не знаю как из поля Edit получить число в переменную INT TCHAR a1; INT...

Как получить текст между тегами-маркерами в переменную?
В текстовом файле есть маркеры-теги. Выглядит так: var 123 - Здесь текст -Здесь текст2 -...

Как выводить переменную через текст?
Как выводить переменную через текст?(2D)

Подсчитать количество вхождений в текст искомого слова
Дан массив строк текста. Подсчитать количество вхождений в него искомого слова. на языке си

Как получить через Sql запрос переменную?
SELECT pass FROM user WHERE id_user = 1 Таблицу подключил через визуальное подключения. Нужно...

Как получить ссылку на переменную через аргумент?
как сделать так чтоб функция изменяла переменную полученную из аргумента? function...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
8
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru