GNU/Linux >> Belajar Linux >  >> Linux

cara memperbarui homebrew dengan Cron di Mac os

Cron tidak menentukan PATH Anda, pastikan Anda selalu memanggil perintah dengan path lengkap, yang mungkin /usr/local/bin/brew update

Ini dianggap praktik yang baik untuk menjaga agar perintah yang tidak diinginkan/tak terduga berjalan. Jika seseorang meletakkan skrip jahat bernama 'brew' di tempat lain di jalur Anda, tetapi sebelum /usr/local/bin, skrip itu akan dipanggil.


Cronjob adalah opsi yang bagus, tetapi saya tidak ingin itu terjadi secara otomatis. Saya menemukan skrip yang akan memberi tahu Anda jika versi baru dari formula yang terinstal di Mac Anda tersedia.

Saya memperluas skrip untuk tidak menampilkan formula yang disematkan di pemberi notifikasi.

Saya memutuskan untuk menggunakan launchd-agent untuk cronjb, karena ini juga berjalan jika Mac dijalankan nanti. Cron-job hanya berjalan jika mac Anda sudah aktif pada saat itu.

Untuk perbandingan cronjob vs launchd, saya sarankan membaca ini.

Inilah konfigurasi saya yang berjalan setiap hari pada pukul 10 pagi dan 3 sore. Skrip yang dipanggil oleh agen terletak di /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>

Anda sekarang akan diberi tahu jika pembaruan baru tersedia. Hubungi brew upgrade jika Anda merasa ketinggalan zaman, atau memasukkannya ke dalam skrip.


Linux
  1. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  2. Bagaimana Cara Menggunakan Ssh-copy-id Dengan Multiple-hop Ssh Tunnel?

  3. Bagaimana Cara Membaca Nilai Kunci Default Dengan Dconf Atau Gsettings?

  1. Cara Membuat Pasangan Kunci SSH (dengan Contoh)

  2. Bagaimana Cara Menghasilkan Permintaan Penandatanganan Sertifikat (CSR) dengan OpenSSL?

  3. ssh-keygen - cara mengatur kunci rsa dengan nama pengguna tertentu

  1. Cara menginstal sertifikat SSL pihak ketiga dengan cPanel

  2. Cara menggunakan kunci SSH dengan Plesk

  3. Cara Mengatur Kunci SSH