Je veux que mon ordinateur règle le volume à un niveau spécifique tous les soirs à 11h45. J'utilise OS X 10.11.4. Je peux régler le volume manuellement via le terminal avec
osascript -e "set Volume 1.7"
ou comme script avec
set volume 1.7
Je veux que ce soit programmé tous les soirs. Il est difficile de trouver quoi que ce soit en ligne qui n'est pas super obsolète. Je ne veux pas vraiment utiliser iCal. D'après ce que j'ai trouvé en ligne, launchd est la voie à suivre, mais en tant que noob, je ne sais pas par où commencer.
Je vois des choses sur l'utilisation d'un .plist dans/Library/LaunchAgents J'ai donc trouvé un générateur de plist astucieux Launched.zerowidth.com mais quel type de code dois-je mettre dans le plist pour obtenir l'effet souhaité? Je me demande également si c'est le bon chemin à exécuter si un utilisateur est connecté.
Suis-je sur le mauvais chemin ici? Je suis ouvert à toute idée pour y arriver, mais je ne veux pas d'une application tierce que je dois garder ouverte tout le temps.
Merci,
Naboo
Veuillez envisager d'utiliser le démon cron. Il est présent dans osx par défaut.
créer un script pour ajuster le volume
#!/bin/bash -l
/usr/bin/osascript -e "set Volume 1.7"
Ajoutez ensuite une nouvelle ligne à crontab.
crontab -e
Par défaut, il s'ouvrira dans l'éditeur vi (m). Mais vous pouvez ajuster n'importe quel éditeur avec
export EDITOR=/path/to/your/awesome/editor
Ajoutez ensuite une nouvelle chaîne à crontab
0 20 * * * /path/to/volume/script.sh
La commande donnée s'exécutera tous les jours à 20 h.
Veuillez trouver plus d'exemples crontab ici https://en.wikipedia.org/wiki/Cron
Comme le souligne @TheDarkKnight, cron a été déconseillé au profit de launchd.
Pour utiliser launchd, enregistrez les éléments suivants sous com.example.volume.plist
dans ~/Library/LaunchAgents/
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.Apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.example.volume</string>
<key>ProgramArguments</key>
<array>
<string>sh</string>
<string>-c</string>
<string>set volume 1.7</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>23</integer>
<key>Minute</key>
<integer>45</integer>
</dict>
</dict>
</plist>
puis exécutez launchctl load ~/Library/LaunchAgents/com.example.volume
commencer. Vous pouvez forcer l'exécution immédiate de la tâche via launchctl start com.example.volume
.
Si vous préférez l'exécuter en tant que root, enregistrez-le dans /Library/LaunchDaemons/
au lieu.