LoginSignup
7
14

More than 1 year has passed since last update.

パスを通す|Linux(MacOSX,CentOSなど)

Last updated at Posted at 2018-06-16

『コマンドが見つかりません』こんなエラーがでたら
それはパスが設定できていない(パスが通っていない)のかもしれません。
パスが通っていないとはコマンドを実行する準備ができていないとも言えます。

現状確認

以下のコマンドで現在のパスの設定が確認できます。


echo $PATH

現在の設定に新たなパスを追加します

以下の記述をホームディレクトリ(/home/ユーザー名/.bash_profile)に追記します。


export PATH=$PATH:/usr/local/scala/bin

もしexport PATH~という記述があったら
今回追加したい:以下の部分を追記してください。

※centosの全ユーザーに反映させたい場合は/etc/profileの最終行に追記するといいようです。

パスを有効にする

.bash_profileに追記して保存しただけではパスが通りませんので
以下のコマンドで有効にします。

source.sh

$ source ~/.bash_profile

余談

コマンドを打つといってもアプリケーションを実行するという意味では
exeファイル(アプリのアイコン)をダブルクリックするのと同じです。
exeファイルがディレクトリにない状態ではエイリアスを作成するのと同様で
コマンドも実体ファイルをどこにインストールするかで
実行できるかできないかが決まります。
よく「ローカルにインストールする」「グローバルにインストールする」と
言われたりしますが、グローバルというのはcentos内のどこからでも実行できる
というようなイメージで、ローカルというのはアプリケーションディレクトリだったり
実行ディレクトリを作ってそのディレクトリにインストールしたコマンドを実行するというイメージです。

注意事項

コマンド実行するshellには種類があります。
shellごとに使えるコマンドが違っていたり
インストールされていなかったりということが起こります。
これは1台のmac内にも複数のshellがインストールされているので確認してみましょう。
ターミナルを立ち上げて以下のコマンドを実行してみてください。

echo.sh

#↓以下のコマンドでインストールされているshellがわかる
$cat /etc/shells

#↓実行した後の出力結果。/bin/の後ろがシェル名
/bin/bash
/bin/csh
/bin/dash
/bin/ksh
/bin/sh
/bin/tcsh
/bin/zsh

そして以下のコマンドで現在どのshellを使用しているかということがわかります。

echo.sh

$echo $SHELL
/bin/zsh

ちなみにmacOSの標準shellがmacOS 10.15 Catalinaから
zshに変更されています。(以前はbashだった。現在も切り替えればbash使えます。)

※上記は個人的見解になります。認識に誤りがありましたらご指摘いただければ幸いです。

7
14
2

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
7
14