GNU/Linux >> Znalost Linux >  >> Linux

jak aktualizovat homebrew pomocí Cronu na Mac OS

Cron nemá vaši PATH definovanou, ujistěte se, že vždy voláte příkazy s úplnou cestou, která je pravděpodobně /usr/local/bin/brew update

To je považováno za dobrý postup, který zabrání spuštění nechtěných/neočekávaných příkazů. Pokud by vám někdo do cesty vložil škodlivý skript s názvem 'brew', ale před /usr/local/bin, zavolal by se místo toho.


Cronjob je dobrá volba, ale nechtěl jsem, aby se to stalo automaticky. Našel jsem skript, který vás upozorní, pokud je k dispozici nová verze vzorce nainstalovaného na vašem Macu.

Rozšířil jsem skript tak, aby v oznamovači nezobrazoval připnuté vzorce.

Rozhodl jsem se použít launchd-agenta pro cronjb, protože ten se spustí i při pozdějším spuštění Macu. Cron-jobs se spustí, pokud je váš mac již v tu dobu zapnutý.

Pro srovnání cronjob vs launchd doporučuji přečíst toto.

Zde je moje konfigurace, která běží každý den v 10:00 a 15:00. Skript, volaný agentem, se nachází na /usr/local/bin/homebrew-update-notifier .

<?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>EnableGlobbing</key>
    <false/>
    <key>Label</key>
    <string>homebrew.simonsimcity.update-notifier</string>
    <key>ProgramArguments</key>
    <array>
        <string>/bin/bash</string>
        <string>/usr/local/bin/homebrew-update-notifier</string>
    </array>
    <key>RunAtLoad</key>
    <true/>
    <key>StandardErrorPath</key>
    <string>/tmp/homebrew.simonsimcity.update-notifier.err</string>
    <key>StandardOutPath</key>
    <string>/tmp/homebrew.simonsimcity.update-notifier.out</string>
    <key>StartCalendarInterval</key>
    <array>
        <dict>
            <key>Hour</key>
            <integer>10</integer>
            <key>Minute</key>
            <integer>0</integer>
        </dict>
        <dict>
            <key>Hour</key>
            <integer>15</integer>
            <key>Minute</key>
            <integer>0</integer>
        </dict>
    </array>
</dict>
</plist>

Nyní budete upozorněni, pokud je k dispozici nová aktualizace. Volejte brew upgrade pokud se cítíte zastaralí, nebo to zahrňte do skriptu.


Linux
  1. Jak nainstalovat certifikát SSL třetí strany pomocí cPanel

  2. Jak vygenerovat pár klíčů SSH (s příklady)

  3. Jak nastavit klíče SSH

  1. Jak Linux zpracovává více po sobě jdoucích oddělovačů cest (/home////username///soubor)?

  2. Jak používat Ssh-copy-id s Multiple-hop Ssh tunelem?

  3. Jak číst výchozí hodnotu klíče pomocí Dconf nebo Gsettings?

  1. Jak vyvolat poslední okno terminálu pomocí klávesové zkratky?

  2. Jak vygenerovat žádost o podpis certifikátu (CSR) s OpenSSL?

  3. Jak opravit chybu GPG No Public Key NO_PUBKEY během aktualizace apt-get