22
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Mac]OS起動時に、スクリプトを実行する

Posted at

launchctlで、OS起動時にスクリプトを実行させます。
システムワイド環境変数を設定する際に便利です。

手順

1. スクリプト作成

OS起動時に自動で実行するスクリプトを作成します。

/Users/XXXX/.system.enviroment

#! /bin/sh

/bin/launchctl setenv REDMINE_ACCESS_TOKEN XXXX
/bin/launchctl setenv REDMINE_URL https://redmine.XXXX.co.jp
/bin/launchctl setenv GITHUB_TOKEN XXXX
/bin/launchctl setenv QIITA_ACCESS_TOKEN XXXX
/bin/launchctl setenv BACKLOG_ACCESS_TOKEN XXXX
/bin/launchctl setenv BACKLOG_URL https://XXXX.backlog.jp

2. plistファイルを作成

launchctlにloadするplistファイルを作成します。
plistで、スクリプトをロード時に実行するように設定します。
実行スクリプトのPATHはチルダ(~)が使えないようです。

/Users/XXXX/Library/LaunchAgents/system.environment.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>system.environment</string>
    <key>Program</key>
    <string>/Users/XXXX/.system.enviroment</string>
    <key>RunAtLoad</key>
    <true/>
</dict>
</plist>

3. plistファイルをロード

plistをlaunchctlにloadします。

launchctl load ~/Library/LaunchAgents/system.environment.plist

おわり

上記の手順で、OS再起動時に設定したスクリプトが実行されます。
launchctl loadに実行されるのでOS再起動しなくても
unloadしてloadしなおせば動作確認可能です。

22
22
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
22
22

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?