[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 8 лет 7 месяцев
  • Сообщений: 526
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
Ander_73, Благодарствую)
84537и в файл (в котором искать), и в консоль - TEE
вот файлов то как раз хотелось избежать.. хотя, при необходимости планировал обойтись как-то так:
команда >"%tmp%\1.txt"
type "%tmp%\1.txt"
findstr "слово" "%tmp%\1.txt" >nul&& set var=1
if "%var%"=="1" GoTo метка1
GoTo метка0
...
:метка0
сообщение
exit /b
:метка1
сообщение
exit /b
но про TEE почитаю, спасибо
84537Скобки расставь, да!
ох уж эти скобки.. думал про них, но предполагал что все равно не заработает потому что findstr не сможет дважды просканировать вывод команды (думал после первого поиска он очищается или типо того)
PS: погуглил TEE, полезненько, можно чуть компактнее прописать:
powershell "команда | TEE "%tmp%\1.txt""
findstr "слово" "%tmp%\1.txt" >nul&& set var=1
if "%var%"=="1" GoTo метка1
GoTo метка0
...
:метка0
сообщение
exit /b
:метка1
сообщение
exit /b
если вдруг надумаю использовать, может знаете начиная с какой версии Windows имеется TEE ??? с этим гугл не помог... В принципе, использование планируется под Win10, но хотелось бы чтобы и на Win7 и Win8 при необходимости отработало

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3610
  • Репутация:127

    [+] [-]
84538погуглил TEE, полезненько
Млдц! ay
84538с какой версии Windows имеется TEE
Это просто внешняя утилита. Или в 10-ке уже встроена?
84538 findstr не сможет дважды просканировать вывод команды
А, понял. Извини, ввёл тебя в заблуждение. Конечно, никакого "дважды" не будет. Но можно ведь через:
for /f %%a in ('command') do (
if %%a==something ...
if %%a==another ...
)
Ну, схематично, понимаешь.

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 8 лет 7 месяцев
  • Сообщений: 526
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
84540Это просто внешняя утилита. Или в 10-ке уже встроена?
сначала так и понял, что внешняя, так как по большей части попадал на страницы о Linux, и о том как пользователи винды ищут подобное))
потом наткнулся на конкретную команду (через powershell), попробовал то же самое без powershell - не сработало, а через powershell - все работает
84540Но можно ведь через
да не, там совсем разный вывод.. ключевые слова в разных местах.. в одном месте я просто несколько раз запускал команду и искал, так как там ответ моментальный, но другая команда секунд 20 думает, и такое уже не подходит

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 8 лет 7 месяцев
  • Сообщений: 526
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
Ander_73, Здравствуйте aa
84540
Но можно ведь через:
Код:
for /f %%a in ('command') do (
if %%a==something ...
if %%a==another ...
)
84542да не, там совсем разный вывод.. ключевые слова в разных местах..
Что-то я тогда совсем забыл мозг включить, через цикл и правда задача решается, получилось примерно так:
for /f "delims=" %%a in ('command') do (
echo %%a| findstr "something"&& ...
echo %%a| findstr "another"&& ...
)
...................
еще кстати вопрос, можно как-то обойти иероглифы (вместо кирилицы)? у меня батник в кодировке 866, вывод русского текста работает нормально. Но в данном случае обрабатывать нужно вывод консольной программы (adb.exe) - если просто ей из консоли пользоваться, то вывод нормальный (на русском/английском), но если попытаться ее "выхлоп" перенаправить в findstr (adb command| findstr ...) или взять в качестве команды для обработки в цикле (for /f %%a in ('adb command')), то получаю иероглифы.
пробовал играться с кодировками (866/1251) - видимо не умею))
пришлось вообще отключить вывод найденной строки: echo %%a| findstr "something">nul&& ...
в принципе не смертельно, по большей части все и затевалось как раз ради более информативных и понятных сообщений (своих сообщений), но хотелось бы разобраться в проблеме...
нагуглить удалось только вот это - http://forum.oszone.net/nextnewesttothread-299403.html , но там вопрос остался без ответа
+++
вот наглядно:

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3610
  • Репутация:127

    [+] [-]
cartmenezz, aa
Тут похоже на UTF.
chcp 65001 не спасёт отца русской демократии?

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 8 лет 7 месяцев
  • Сообщений: 526
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
Ander_73, спасет ah

Нижайший поклон!))
...
правда все равно несовсем понятно, почему при обычном использовании не приходится переключать кодовую страницу (само определяется?), видимо надо что-то где-то почитать на эту тему...

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3610
  • Репутация:127

    [+] [-]
cartmenezz, да кто их разберёт.
Берём команду (стандартная утилита Windows, на минуточку):
certutil /?
Вроде, всё по-людски. Но стоит добавить немного магии:
certutil /?| more
и уже другая кодовая страница. Вот как так-то? bk

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 8 лет 7 месяцев
  • Сообщений: 526
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
84822certutil
кстати да, в том примере на oszone, что я находил, у человека как раз была проблема с certutil
... понял, ещё раз спасибо

[Цитировать]

    Gvint64
  • 24573
  • Стаж: 3 года 11 месяцев
  • Сообщений: 570
  • Репутация:64

    [+] [-]
youtube-dl Источник. Для скачивани Audio - M4A или Video - MP4. Загрузка из предварительно созданного файла с ссылками - выбор (пример в наличии), выбор папки для сохранения, выбор что качать Audio-M4A или Video-MP4. Ссылки - правый клик на экране фильма - "копировать url видео"! Добавил конвертор в МР3. ffmpeg
Скачать


Последний раз редактировалось: Gvint64 (2021-04-26 20:37), всего редактировалось 10 раз(а)

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 8 лет 7 месяцев
  • Сообщений: 526
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
Я тут недавно приходил с вопросом:
82643
есть необходимость установить определенный размер окна консоли, 120х40 например.
Код:
mode con:cols=120 lines=40
делает несовсем то что нужно, будет выполняться большое колличество команд, и в конце нужна возможность пролистать посмотреть как все прошло (без вывода в отдельный файл).
а "lines=40" жестко ограничивает колличество строк. В настройках cmd есть размер буфера экрана (9000 строк) и высота окна (30 строк, на 10ке по крайней мере), "lines=40" меняет оба этих значения. Нельзя ли как только высоту окна поменять?
и как оказалось наиболее подходящее решение было то, что мне предложили сразу:
82654попробуй сделать это через ярлык. Создай .lnk и в его свойствах пропиши нужное.
именно ручное создание ярлыка я тогда отбросил, так как нужен был переносной вариант (архив/sfx) сразу готовый к использованию.
...
Но в итоге это оказалось именно то что нужно. Ведь можно создать ярлык с относительным путем:

такой вариант не требует телодвижений при переносе на другой ПК
P.S.: пробовал чуть менять строку запуска, все варианты вроде как работают (проверял на Win10/8/7):
1) %comspec% /c .\data\main.cmd
2) %comspec% /c ".\data\main.cmd"
3) %comspec% /c start /b .\data\main.cmd
4) %comspec% /c start /b "" ".\data\main"
остановился на первом, так как самый короткий

[Цитировать]

    Viktor_Kisel
  • 2625
  • Стаж: 8 лет 2 месяца
  • Сообщений: 632
  • Репутация:46

    [+] [-]
Gvint64
youtube-dl Источник.
Под WinXP при выборе строчки FOLDER : - вылетает.
Можно задать в батнике постоянными, чтобы не выбирать постоянно :?
DOWNLIST: DownloadsList.txt (текущая папка)
FOLDER: D:\Downloads\

[Цитировать]

    Gvint64
  • 24573
  • Стаж: 3 года 11 месяцев
  • Сообщений: 570
  • Репутация:64

    [+] [-]
Viktor_Kisel, aa 6-7 строкой добавить например так - тогда выбирать ненадо:
set folder=D:\Downloads
set dnl=DownloadsList.txt

[Цитировать]

    Ander_73
  • 15549
  • Стаж: 7 лет 2 месяца
  • Сообщений: 3610
  • Репутация:127

    [+] [-]
84916%comspec% /c start /b
Крайне непредсказуемая команда. НЯП, её поведение в 10-ке поменялось. Не помню подробностей, но ужаснулся ab
В крайнем случае, выполнять с ожиданием:
start /b/w
Но лучше избегать, имхо.

[Цитировать]

    cartmenezz
  • 1384
  • Стаж: 8 лет 7 месяцев
  • Сообщений: 526
  • Репутация:14

    [+] [-]
  • Откуда: Калининград
84919Но лучше избегать
хм... не знал, буду иметь ввиду, спасибо

[Цитировать]

    Viktor_Kisel
  • 2625
  • Стаж: 8 лет 2 месяца
  • Сообщений: 632
  • Репутация:46

    [+] [-]
Gvint64
Как то вторая версия AVDOWN2 работает с ошибкой, в конце закачки:
ERROR: '' is not a valid URL. Set --default-search "ytsearch" (or run youtube-dl "ytsearch:" ) to search YouTube
Тип url абсолютно не влияет на закачку, например что такой: https://youtu.be/O6oDfCxmmZw, что этот https://www.youtube.com/watch?v=O6oDfCxmmZw
6-7 строкой добавить например так - тогда выбирать ненадо:
set folder=D:\Downloads
set dnl=DownloadsList.txt
а после добавления:
set dnl=DownloadsList.txt
закачка выдает ошибку, нужно предварительно вручную нажать на строчку DOWNLIST: и FOLDER : тогда закачка работает, полуавтомат получается... да и еще эта ошибка постоянно после закачки:
ERROR: '' is not a valid URL. Set --default-search "ytsearch" (or run youtube-dl "ytsearch:" ) to search YouTube

Страница 44 из 89


Показать сообщения:    

Текущее время: 26-Апр 18:21

Часовой пояс: UTC + 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете прикреплять файлы к сообщениям
Вы можете скачивать файлы