Как выполнить сложные команды Linux в QT? [дублировать]C++

Программы на C++. Форум разработчиков
Anonymous
Как выполнить сложные команды Linux в QT? [дублировать]

Сообщение Anonymous »

Я хочу перезапустить компьютер, запустив команду в Linux, используя QProcess . У меня жестко кодировал пароль корня в моем приложении.

Код: Выделить всё

echo myPass | sudo -S shutdown -r now
< /code>

Когда я помещаю команду в скрипт оболочки и вызовут ее через Qprocess < /code> Это также успешно: < /p>

QProcess process;
process.startDetached("/bin/sh", QStringList()

Но я не могу запустить его, напрямую перейдя в Qprocess < /code>: < /p>

process.startDetached("echo myPass | sudo -S shutdown -r now ");
< /code>

Это просто печатать mypass | sudo -s shutdown -r теперь 


Как можно запустить такие относительно сложные команды непосредственно, используя Qprocess . (Не вкладывать скрипт оболочки).

Подробнее здесь: https://stackoverflow.com/questions/233 ... ands-in-qt

Вернуться в «C++»