Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment redémarrer mon mac depuis du code Java ou Perl ?

23 réponses
Avatar
the_fredo
Bonjour,

Je souhaite pouvoir redémarrer mon Mac (iMac DV400 , MacOS 10.2.6)
depuis un programme Java ou Perl ou autre (j'aimerais éviter
AppleScript car je ne connais pas: je suis développeur, mais pas Mac -
malheureusement).

Y a t'il des packages Java ou Perl qui feraient ca ?
(j'ai les DevTools si ca peut aider)

Merci d'avance,

Fred.

10 réponses

1 2 3
Avatar
Schmurtz
Je souhaite pouvoir redémarrer mon Mac (iMac DV400 , MacOS 10.2.6)
depuis un programme Java ou Perl ou autre (j'aimerais éviter
AppleScript car je ne connais pas: je suis développeur, mais pas Mac -
malheureusement).


"shutdown -r now", commande exécutable depuis n'importe quel
environement (C, java, perl, applescriptŠ).

Il faut juste être root pour l'exécuter, ou alors utiliser sudo, ou un
script appartenant à root avec le suid bit à 1 (une horreur du point de
vue sécurité).

--
Schmurtz

Avatar
patpro
In article ,
(Fred) wrote:

Bonjour,

Je souhaite pouvoir redémarrer mon Mac (iMac DV400 , MacOS 10.2.6)
depuis un programme Java ou Perl ou autre (j'aimerais éviter
AppleScript car je ne connais pas: je suis développeur, mais pas Mac -
malheureusement).

Y a t'il des packages Java ou Perl qui feraient ca ?
(j'ai les DevTools si ca peut aider)



system(reboot)

mais il te faudra les pouvoirs occultes de root

sinon :

system(osascript -e 'tell application "finder" to restart')

mais ca ne marche qu'en local

patpro
--
je cherche un poste d'admin-sys Mac/UNIX
(ou une jeune et jolie femme riche)
http://patpro.net/cv.php

Avatar
Patrick Stadelmann
In article <bm3vup$247$, Schmurtz
wrote:

Je souhaite pouvoir redémarrer mon Mac (iMac DV400 , MacOS 10.2.6)
depuis un programme Java ou Perl ou autre (j'aimerais éviter
AppleScript car je ne connais pas: je suis développeur, mais pas Mac -
malheureusement).


"shutdown -r now", commande exécutable depuis n'importe quel
environement (C, java, perl, applescriptŠ).


Préférer AppleScript, ça se fait en une ligne :

tell application "System Events" to shut down

Ca a l'avantage (qui peut être un inconvénient, c'est selon) de quitter
proprement les applications.

Patrick
--
Patrick Stadelmann


Avatar
Saïd
Patrick Stadelmann :
In article <bm3vup$247$, Schmurtz
wrote:

Je souhaite pouvoir redémarrer mon Mac (iMac DV400 , MacOS 10.2.6)
depuis un programme Java ou Perl ou autre (j'aimerais éviter
AppleScript car je ne connais pas: je suis développeur, mais pas Mac -
malheureusement).


"shutdown -r now", commande exécutable depuis n'importe quel
environement (C, java, perl, applescriptŠ).


Préférer AppleScript, ça se fait en une ligne :

tell application "System Events" to shut down

Ca a l'avantage (qui peut être un inconvénient, c'est selon) de quitter
proprement les applications.



Et que ce passe-t-il pour les applications qui demandent confirmation avant
de quitter (comme X11 ou un traitement de texte dans lequel des documents
ont ete modifies)?

--
Saïd.



Avatar
Patrick Stadelmann
In article ,
Saïd wrote:

Et que ce passe-t-il pour les applications qui demandent confirmation avant
de quitter (comme X11 ou un traitement de texte dans lequel des documents
ont ete modifies)?


La même chose que lors d'une extinction manuelle. C'est pour cela que
j'ai mis que c'était un avantage ou un inconvénient. Perso, je préfère
que la machine reste allumée plutôt que de perdre des données, mais on
peut préférer l'inverse.

Patrick
--
Patrick Stadelmann

Avatar
Patrick Stadelmann
In article ,
patpro wrote:

system(osascript -e 'tell application "finder" to restart')

mais ca ne marche qu'en local


C'est à cause de la commande system() ? Car osascript appelé depuis une
session ssh fontionne très bien.

Patrick
--
Patrick Stadelmann

Avatar
patpro
In article ,
Saïd wrote:

Patrick Stadelmann :
In article <bm3vup$247$, Schmurtz
wrote:

Je souhaite pouvoir redémarrer mon Mac (iMac DV400 , MacOS 10.2.6)
depuis un programme Java ou Perl ou autre (j'aimerais éviter
AppleScript car je ne connais pas: je suis développeur, mais pas Mac -
malheureusement).


"shutdown -r now", commande exécutable depuis n'importe quel
environement (C, java, perl, applescriptŠ).


Préférer AppleScript, ça se fait en une ligne :

tell application "System Events" to shut down

Ca a l'avantage (qui peut être un inconvénient, c'est selon) de quitter
proprement les applications.



Et que ce passe-t-il pour les applications qui demandent confirmation avant
de quitter (comme X11 ou un traitement de texte dans lequel des documents
ont ete modifies)?



normalement les demandes de confirmation de ces appli sont honorées : le
reboot ne se fait pas tant que tu ne valides pas.
Au passage, je suis pas sur que "shut down" ça redémarre la machine...

patpro
--
je cherche un poste d'admin-sys Mac/UNIX
(ou une jeune et jolie femme riche)
http://patpro.net/cv.php




Avatar
patpro
In article
,
Patrick Stadelmann wrote:

In article ,
patpro wrote:

system(osascript -e 'tell application "finder" to restart')

mais ca ne marche qu'en local


C'est à cause de la commande system() ? Car osascript appelé depuis une
session ssh fontionne très bien.

Patrick



non, j'ai testé directement osascript dans mettre system() via ssh et ça
n'a pas fonctionné :

[sgdp:~] sgdp% osascript -e 'tell application "finder" to restart'
execution error: Finder got an error: Application isn't running. (-600)


patpro
--
je cherche un poste d'admin-sys Mac/UNIX
(ou une jeune et jolie femme riche)
http://patpro.net/cv.php


Avatar
Schmurtz
Et que ce passe-t-il pour les applications qui demandent confirmation avant
de quitter (comme X11 ou un traitement de texte dans lequel des documents
ont ete modifies)?



Il faut valider, sinon pas de redémarrage.
Si c'est fait à la main, je conseille d'effectuer un who ou ps aux afin
de savoir si quelqu'un et connecté ou pas avant de faire la manip.

normalement les demandes de confirmation de ces appli sont honorées : le
reboot ne se fait pas tant que tu ne valides pas.
Au passage, je suis pas sur que "shut down" ça redémarre la machine...


Si, c'est grâce à l'option -r.
Si je ne me trompe pas, on peut mettre une heure de redémarrage à la
place de now :

shutdown -r 12:30 "Redémarrage à 12:30, fermez votre session avant."
shutdown -r +60 "Redémarrage dans une heure, fermez votre session avant."

Entre l'appel de shutdown et le redémarrage, personne ne peut se loguer.

--
Schmurtz


Avatar
Stephane Dupille
normalement les demandes de confirmation de ces appli sont honorées : le
reboot ne se fait pas tant que tu ne valides pas.
Au passage, je suis pas sur que "shut down" ça redémarre la machine...


Si. La commande shutdown peut programmer un redémarrage à l'avance,
et on peut décider soit de rebooter, soit simplement de terminer le
système, soit d'éteindre la machine (couper le courant).

man 8 shutdown
dans un terminal pour plus d'infos.

--
- Bientot==> Une rubrique membre avec photos
- Bientot==> "Un chat on line" pour discuter
Si j'amène la photo de mon membre, je pourai caresser le chat ?

-+- FF in Guide du Neuneu Usenet - Cha chanonchait bien pourtant -+-

1 2 3