Как я могу добавить в мою программу «параметр выключения»?
Или как я могу отправлять команды на терминал из моей программы (чтобы я мог отправить команду sudo shutdown
)?
Планирую писать на c ++.
Можно использовать system()
функция, определяемая в заголовке stdlib.h
.
#include<stdlib.h>
int main()
{
system("dbus-send --system --print-reply --dest=org.freedesktop.login1 /org/freedesktop/login1 \"org.freedesktop.login1.Manager.PowerOff\" boolean:true");
retrun 0;
}
Этому рекомендуют более чем sudo shutdown
, потому что первый не требует полномочий пользователя root. Или Ваша программа попросит пароль администратора перед завершением работы.
можно получить больше информации о системной команде от, он - страница справочника:
man system
†¦, как может, я отправляю команды на терминал из моей программы †¦
Используя system
, например:
#include <stdio.h>
#include <stdlib.h>
int main() {
system("/bin/ls -la");
}
или
#include <stdio.h>
#include <stdlib.h>
int main() {
system("sudo shutdown");
}
<час> Пример
% gcc foo.cpp
% ./a.out
[sudo] password for aboettger:
% cat foo.cpp
#include <stdio.h>
#include <stdlib.h>
int main() {
system("sudo shutdown");
}