Здравствуйте, -realex-, Вы писали:
R>Мне нужно выполнить несколько shell-команд, причем нежелательно, чтобы программа создавала bat-файл, но, к сожалению, не всё получается, например
R>R>Set /p text= enter text:
R>Echo %text%>"%COMPUTERNAME%.txt"
R>Echo %text%
R>
R>преобразовываем в одну строку:
R>R>cmd /C Set /p text= enter text: &Echo %text%>"%COMPUTERNAME%.txt" &Echo %text%
R>
R>в результате %text% неопределено
хотя в остальном всё работает.
Попробуй создать pipe и заставить интерпретатор команд читать этот канал. туда пиши так, как в первом случае — команда-одна строка.
Если не сможешь, извратись с созданием временного командного файла.
(и не забывай про контексты выполнения командного файла)
Удачи.