
No.6ベストアンサー
- 回答日時:
macOSだとlaunchdがサービスプロセスを司っていて、システムワイドな設定もLaunch Daemons/Agentsに対して設定するのが標準的なやり方です。
launchctlで指定したり、当該サービスのplistに保存したりとか。
ただ、セキュリティの観点からプロセス権限の分離を進めた結果、どれか一つだけ設定すれば全てのプロセスに反映される構成になってないケースもあったような。
なるほど!解決です!
回答いただいた内容が大きなヒントになりました。
下記ファイルを作成することで、ログイン時に環境変数がセットされました。
$cat ~/Library/LaunchAgents/localhost.setenv.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>localhost.setenv</string>
<key>ProgramArguments</key>
<array>
<string>/bin/launchctl</string>
<string>setenv</string>
<string>変数のキー</string>
<string>変数の値</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
<array>の中でとりあえず環境変数の設定を直書きしてますが、ここをシェルスクリプトとかにすれば汎用的にできるかもしれません。
なにはともあれ助かりました。
ありがとうございます。
No.5
- 回答日時:
>GUIアプリケーション上で有効にしたい場合も
GUIで行った場合はそのアプリが独自の設定ファイルを持ってるのでそのファイルに書き込まれることが殆どです
No.2さんが「アプリ内にパスを通すための設定ファイルが存在します」と回答されてます。ちゃんと読まれましたか?
上から目線も何も丁寧に説明してくれる方に対してあなたが上から目線なのではないですか?
No.4
- 回答日時:
>Macの場合はどこで設定するのが標準的な方法ですか?
WindowsのようなGUIではなくUnixやLinuxはターミナルが標準的ですです
回答有り難うございます。
ということは、GUIアプリケーション上で有効にしたい場合も、.bashrcなり.zshrcなりに書いておいて、一旦ターミナルを起動するという方法しか無いってことですか?
No.3
- 回答日時:
あなたが何をやりたいのかさっぱり解りません
PATHを通したいと思ってました
PATHを通す必要が無いのでしたら環境変数云々なんとどうでもいいことです
>私の手元の環境がおかしいのでしょうか?
はい、その通りだと思います
No.2
- 回答日時:
ターミナルで行うのが標準です
あのですね、なぜPATHを通す必要があるのか考えてくださいね
PATHが必要になってくるものはそもそもターミナルが必要になります
ですのでターミナルで行ってください
GUIでインストールしたアプリにPATHを通す必要はありません
もしPATHを通す必要があるようなアプリの場合にはそのアプリ内にパスを通すための設定ファイルが存在します
>、起動後に一度でもターミナルを開かないと環境変数がセットされない様に思います。
それは間違った知識です
ログイン時に1回実行されます
あのですね、PATHを通したいなんて書いてないです。
私は環境変数を設定したいのです。
また、GUIのアプリケーションでも環境変数を参照するものはあります。
> それは間違った知識です
> ログイン時に1回実行されます
本当にそうですか?
現に、OSリブート後にGUIアプリを開いても環境変数が読み込まれておらず、ターミナルを一度起動してから同じアプリを起動すると環境変数がセットされて意図した動作をしています。
私の手元の環境がおかしいのでしょうか?
No.1
- 回答日時:
zshの場合はhomeディレクトリに.zshrcを作って
bashなら.bashrcもしくは.bash_profile
テキストエディットなどで開いて
export PATH=$PATH:/usr/local/bin
のように記述して保存すれば良いです
bashなら以下で更新
source ~/.bashrc
source ~/.bash_profile
zshならいちおうターミナル再起動
確認のためにPATHが通っているかの確認はターミナルで
echo $PATH
先程のpathの/usr/local/binが出力されれば通ってます
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ターミナルID、ターミナルタイ...
-
Mac ターミナルのウィンドウが...
-
macでteratermの用なもの
-
Mac ターミナルでバックスラッ...
-
リモートデスクトップとターミ...
-
IPアドレス競合時、相手を見つ...
-
リモートデスクトップのユーザ...
-
YAMAHA ルータ PP PP1 ...
-
画像編集ソフト、GIMPの規約に...
-
従量制課金接続をオフにしたら...
-
Office365が勝手にインストール...
-
Windows11のセットアップ中の強...
-
PC2台でBecky!を使用する際は料...
-
Winrarの移行
-
最近アップルペンシルを購入し...
-
Zoom。法人で1ライセンスを複数...
-
WinRARがずっと使えてますがな...
-
ネットワークドライブが再起動...
-
MACの内蔵HDを外付HDとして使用...
-
SAIについて・・・
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ターミナルID、ターミナルタイ...
-
リモートデスクトップとターミ...
-
OSXのターミナルについて
-
Mac ターミナルでバックスラッ...
-
ターミナルについて
-
macでteratermの用なもの
-
(ターミナルサービス)ライセ...
-
Wwindows2003のターミナルサー...
-
Knoppix Edu4でのLaTeXについて
-
ターミナルサーバについて
-
MacのターミナルからSSHで作業...
-
MacBook再インストールできません
-
WinXPのTSCALは?
-
unix
-
メディアが入っていない光学式...
-
MacでC言語を勉強してみてるの...
-
MACでASFRecorderを使う方法。
-
macOS Big Surにおける環境変数...
-
WindowsServer2008のCALについて
-
linux初心者です
おすすめ情報
回答ありがとうございます。
ただ、知りたいのはbashやzshの環境変数の設定方法ではなく、Macでの標準的な方法です。
.bashrcや.zshrcに環境変数を定義する方法だと、起動後に一度でもターミナルを開かないと環境変数がセットされない様に思います。(OS起動後にGUIアプリを起動する等した場合)
なので、Windowsのようななにか標準的な方法があるのかなというのが質問の主旨です。
よろしくお願いします。