Как выключить компьютер с убунту из программы? [закрыто]

Как я могу добавить в мою программу «параметр выключения»?

Или как я могу отправлять команды на терминал из моей программы (чтобы я мог отправить команду sudo shutdown )?

Планирую писать на c ++.

1
задан 17 July 2015 в 17:12

2 ответа

Можно использовать 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
1
ответ дан 7 December 2019 в 13:55

†¦, как может, я отправляю команды на терминал из моей программы †¦

Используя 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");
}
1
ответ дан 7 December 2019 в 13:55

Другие вопросы по тегам:

Похожие вопросы: