powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Кодировка текста при перехвате консоли
15 сообщений из 40, страница 2 из 2
Кодировка текста при перехвате консоли
    #40023798
S_Gur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alekcvp, тогда можно вопрос? Мне нужно выполнить следующую команду:

C:\OpenServer\modules\database\MySQL-8.0\bin\mysql.exe --login-path=DBCreatorLocal Woken_DB -c < C:\Work\Woken Space\Woken_DB\Procedures\prApplyServiceToAccount.SQL

Как мне оформить ее? Напрямую при вызове mysql считает, что параметры неверные и соответственно выдает портянку с помощью. Пробовал брать в кавычки каждый параметр - до базы данных вроде принимает, после - опять ругается. Есть у меня подозрение, что надо как-то оформить символ "<", но пока уверенности нет. При обертке этой команды в cmd-файл безо всяких кавычек все прекрасно работает. Сама команда из командной строки тоже работает
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023799
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S_Gur
alekcvp, тогда можно вопрос? Мне нужно выполнить следующую команду:

C:\OpenServer\modules\database\MySQL-8.0\bin\mysql.exe --login-path=DBCreatorLocal Woken_DB -c < C:\Work\Woken Space\Woken_DB\Procedures\prApplyServiceToAccount.SQL

Как мне оформить ее? Напрямую при вызове mysql считает, что параметры неверные и соответственно выдает портянку с помощью. Пробовал брать в кавычки каждый параметр - до базы данных вроде принимает, после - опять ругается. Есть у меня подозрение, что надо как-то оформить символ "<", но пока уверенности нет. При обертке этой команды в cmd-файл безо всяких кавычек все прекрасно работает. Сама команда из командной строки тоже работает

"<" - это перенаправление ввода, а там и так exeшник запускается с перенаправлением, для захвата. Возможно из-за этого где-то конфликтует. Тут не подскажу. Можно попробовать запустить "%comspec% /c ...", где ... - это ваша строка. Но будет лишняя "прослойка" в виде cmd.exe (как и при запуске через cmd-файл).
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023803
S_Gur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alekcvp, понятно, спасибо. В принципе, обертка в cmd хоть и чуть более хлопотная, но работает. Пока оставлю так...
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023812
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>, <, | это фичи cmd.exe
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023814
S_Gur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Fr0sT-Brutal, это понятно. Но mysql.exe иначе файлы на вход не принимает
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023818
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S_GurНо mysql.exe иначе файлы на вход не принимает

Или ты ему их не в ту трубу пихаешь.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023825
S_Gur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, а есть другие варианты?
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023897
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S_Gur,

Да, так же как перехватывали вывод - перехватить ввод и писать туда то что стоит после '<'.
Но это уже следующий уровень сложности.
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023899
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
del
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023921
S_Gur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alekcvp, куда писать? Тут уже дело не в перехвате, а в формате команды. Перехватить можно что угодно, но без "<" MySQL не отработает. Это у него единственный формат выполнения скрипта из файла. Мне не нужно писать туда то, что после "<" - мне нужно все вместе. Тем более, что перехватывать ввод мне не надо - команду я формирую сам. Может быть, есть вариант, как подменить "<" какой-то комбинацией символов в подаваемой строке, но я его пока не нашел
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023947
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S_GurПерехватить можно что угодно, но без "<" MySQL не отработает. Это у него единственный
формат выполнения скрипта из файла.

Так тебе и не надо чтобы он выполнял "из файла". Посылай ему этот файл на стандартный
ввод. Прочитай уже букварь о том как действует перенаправление ввода-вывода в cmd/bash/итп.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023954
S_Gur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, блин, прежде, чем советовать, поинтересовался хотя бы, что за задача у меня. Настройка команды, которую я выполняю в этот момент, происходит в другом месте. Я понятия не имею, что я запускаю - блокнот, дельфи или игрушку. И в параметрах к этому выполняемому файлу мой подаваемый файл может идти, а может и нет. А может быть задан не исполняемый файл, а, например, текстовый - тогда он должен открываться ассоциативными средствами операционной системы. А в данном конкретном случае мне именно надо, чтобы он выполнял именно из файла . По условиям задачи я могу только получить несколько параметров (два из них - выполняемый файл и аргументы запуска) и собрать из них удобоваримую команду на выполнение, по возможности обработав их - например, взяв в двоеточие имя файла на случай, если в нем есть пробелы. Сейчас речь идет о том, могу ли я в настраиваемых параметрах на выполнение SQL-скрипта настроить аргументы так, чтобы ShellExecute или ему подобные функции смогли правильно выполнить команду или мне проще эту команду обернуть в CMD-файл и выполнить уже его. Что я и делаю сейчас вполне успешно.
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40023960
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S_GurНастройка команды, которую я выполняю в этот момент, происходит в другом месте. Я понятия
не имею, что я запускаю - блокнот, дельфи или игрушку. И в параметрах к этому выполняемому
файлу мой подаваемый файл может идти, а может и нет.

А распарсить полученную команду и определить что за файл, его ассоциации, отделить
параметры и обнаружить среди них команды перенаправления потоков - лень. Ок...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40024029
S_Gur
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov, а смысл какой? Мне надо было получить ответ от выполняемой команды - я его получаю. Чем твой вариант лучше выполнения CMD-файла, содержащего мою команду в том виде, в котором она была мне задана? Кроме того, что сейчас я пользуюсь готовым инструментарием и не трачу время на написание системных процедур, имеющих к моей основной задаче весьма отдаленное отношение. Тем более, что ситуация крайне редкая - конкретно в моем случае конструкция '< File.SQL' при необходимости легко заменяется на '-e "Source File.SQL"' безо всякого перенаправления. Когда мне нужно будет управлять вводом, тогда и буду решать такую задачу. Тем более - я, конечно, проверю, но сильно подозреваю, что для того, чтобы подать файл на стандартный ввод MySQL, его надо предварительно запустить, выполнить скрипт, а потом организовать из него выход. Что вряд ли получится сделать одной командой. Мне надо было понять, почему конкретно не выполняется моя командная строка - я понял. Большое спасибо всем, проблему считаю закрытой
...
Рейтинг: 0 / 0
Кодировка текста при перехвате консоли
    #40024039
Fr0sT-Brutal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
S_Gur
Fr0sT-Brutal, это понятно. Но mysql.exe иначе файлы на вход не принимает

Видимо, все же не понятно. Пихай ему файл в STDIN и будет счастье
...
Рейтинг: 0 / 0
15 сообщений из 40, страница 2 из 2
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Кодировка текста при перехвате консоли
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]