Я пытаюсь запустить следующую команду bash из моей программы на С++:
diff <(cat /etc/passwd) <(ls -l /etc)
со следующим оператором С++:
system("diff <(cat /etc/passwd) <(ls -l /etc)");
Команда отлично работает при запуске ее непосредственно из оболочки Linux, но при ее запуске из моей программы я получаю:
sh: 1: Syntax error: "(" unexpected
Что касается (
Я попытался выполнить (
с \
, но это создает больше проблем:
system("diff <\\(cat /etc/passwd\\) <\\(ls -l /etc\\)");
sh: 1: cannot open (cat: No such file
Все, что я хочу, это запустить следующее из моей программы на С++:
diff <(cat /etc/passwd) <(ls -l /etc)
Я могу создать файл и запустить его, но я оставляю это как последний вариант.