1 votes

OSX/launchctl : Comment ouvrir un site web spécifique dans une nouvelle instance de chrome au premier plan chaque matin ?

Exigences :

  1. Site web spécifique
  2. Chaque matin, bien que l'ordinateur portable ait été fermé pendant la nuit (launchctl peut s'en charger)
  3. Premier plan - doit attirer mon attention, même si j'ai plusieurs espaces/bureaux.
  4. Nouvelle instance de chrome (pas nécessaire, mais préférable)

Quand j'essaie open http://superuser.com dans un bureau/espace où Chrome n'est pas déjà ouvert, je vois qu'il échoue dans les cas 3. et 4. Ce qui se passe, c'est qu'un onglet s'ouvre à l'intérieur d'une instance de Chrome déjà ouverte dans un autre l'espace/bureau en arrière-plan.

0voto

Kevin Points 275

Voici ce que j'ai trouvé. C'était plus simple que je ne le pensais.

Créer Shell Shell daily_goals.sh :

#!/bin/bash

# this is needed to launch Chrome as a new window. Since it's a new window, it will open in the foreground in current space/desktop. 
open -n -a Google\ Chrome 

# this sleeps for 1 second. It's necessary because otherwise the website, called below, will open in existing Chrome window, which may be located in another desktop. I think sleeping lets the next `open` call find the newly opened Chrome window, and replace the new tab with the provided website. 
sleep 1 

# the website I provided. 
open http://joesgoals.com 

Créer /Library/LaunchDaemons/daily_goals.plist :

<?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>daily_goals</string>
    <key>ProgramArguments</key>
    <array>
        <string>/Users/user/Work/daily_goals.sh</string>
    </array>
    <key>StartCalendarInterval</key>
    <dict>
        <key>Hour</key>
        <integer>07</integer>
        <key>Minute</key>
        <integer>00</integer>
    </dict>
</dict>
</plist>

Ajouter à launchctl :

launchctl load -w /Library/LaunchDaemons/daily_goals.plist

En résumé, cela lance joesgoals.com tous les matins à 7 heures dans une instance Chrome nouvellement ouverte. Si l'ordinateur portable est endormi à 7 heures du matin, JoesGoals devrait s'ouvrir lorsque l'ordinateur portable sort du sommeil. Je mettrai à jour plus tard si je vois des bizarreries en reprenant osx dans différents bureaux/espaces (avec ou sans Chrome). J'espère que ce ne sera pas un problème.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X