Какой точный способ правильно заключить в кавычки один аргумент командной строки?Например, у меня есть случайный текст в переменной $X
.Мне нужно указать это таким образом, чтобы при вызове
system("program.exe " + $X_QUOTED);
тогда argv[1]
моего program.exe должен совпадать с исходным без кавычки $X
представьте, что у меня есть эта программа.exe:
int main(const char **argv, int){ puts(argv[1]); }
и вывод команды "program xxxx":
"test |test
что буквально должно быть xxxx
?Я пытался добавить кавычки и все эти хитрости, но тогда я всегда могу добавить какой-то другой тип вывода, который нарушил бы мой подход к цитированию аргументов строки cmd.