「今更そんなこと……」と思われそうなんですが、定期的に忘れて検索する現実に向き合って記事に残します。何かあるたびに追記する予定。
シェルの確認
ターミナルで以下コマンド or タイトルバーで確認。「macOS Catalina(2019年)」より標準でzsh。
echo $SHELL
シェルってなに?bashとzsh、自分のMacはどっちを使ってるの? | eureka
シェルにおける設定ファイルの扱い
前提。
- rc:シェルを起動するたびに読み込まれる。
- profile:シェルにログイン時、一度だけ読み込まれる。
上記を踏まえた上で、zshとbashで分かれている。この辺がゴチャゴチャに混ぜて書かれている記事もあり危険。
- 「.zshrc」と「.zprofile」
- 「.bashrc」と「.bash_profile」
ホームディレクトリ(「cd ~」で移動)にある設定ファイルをvimかテキストエディター等でいじる。環境変数はprofileに書く方が良さそう。パスは.zshrcに追記することが多いっぽいが場合による。.zshenv(ログインシェル、インタラクティブシェル、シェルスクリプトどれでも必要な定義を設定)もあるが、今のところ自分の環境でいじる必要はなさそう。この辺の話はまだちゃんと理解できていない(細かく使い分ける必要がある場面にまだ遭遇してない)。
[bash, zsh] profileとrcの使い分け問題で、なぜ「とりあえず全部profileでok」と思われがちか。そもそも「全部profile」は本当にダメなのか - Qiita
zshrcとzprofileについて - gallardo diary
設定ファイルを作成(未作成の場合)
以下コマンドを実行(.zprofileの場合)。
touch .zprofile
ファイルが存在するか確認する場合は以下。
ls .zprofile
vimで編集する際のメモ。
パスの確認
以下コマンドを実行。複数のパスが「:」で区切られて表示される。「env」コマンドでPATH=~の行を確認してもよい。
echo $PATH
環境変数やパスの追加(パスを通す)
設定ファイル内に以下の行を追加する。「$PATH:」を書くのは既存のパス設定を維持したまま新しいパスを追記するため。
export PATH=$PATH:hoge
export 環境変数名=その値
MacOSX での PATH の通し方について解説 | だえうホームページ
追加した設定を反映する
以下コマンドを実行。
※Pythonで仮想環境に入ってたら抜けて入り直さないといけないかも。
source .zprofile
そもそもな話
余談やメモ
- 旧Macに自分でも把握できないぐらいのTensorFlow(複数環境、バージョンetc)が入っており困った経験がある。openFrameworksでTensorFlowを動かそうとしたのが原因。M1 Macになってからローカルでの開発がより億劫になり、ほぼColab上で済ませるようになった。
- M1 Mac にMiniforge でPython開発環境を構築している。でもDaVinci Resolve 18 のコンソール(Py3)を使うとき、バニラのPython3.10じゃないと認識しない的な投稿をBlackmagicのフォーラムで見た(気がする)。それがめちゃくちゃ嫌で作業を放置している。詳しい方いたら教えてください……