コマンドライン
.bash_profile
からリロードするにはどうすればよいですか?
.bash_profile
終了して再度ログインすることで、シェルに変更を認識させることができますが、オンデマンドで実行できるようにしたいと考えています。
コマンドライン
.bash_profile
からリロードするにはどうすればよいですか?
.bash_profile
終了して再度ログインすることで、シェルに変更を認識させることができますが、オンデマンドで実行できるようにしたいと考えています。
回答:
入力するだけ source ~/.bash_profile
または、キーストロークを保存したい場合は、次のように入力できます。 . ~/.bash_profile
alias reload='source ~/.bash_profile && echo "File .bash_profile reloaded correctly" || echo "Syntax error, could not import the file"';
. ~/.bash_profile
そこにある現在の状態に依存関係がないことを確認してください。
.
、この場合のコマンドは何ですか?
.
は単にsource
コマンドのエイリアスです。
.
より古いsource
です。
source
のbash固有の実装です.
.
そしてsource
bashでも文字通り同じです。リンクから:「bashではsource
ドット/ピリオド ' .
'の同義語ですが、POSIX shでは同義語ではないため、最大の互換性のためにピリオドを使用してください。」
単にタイプ:
. ~/.bash_profile
ただし、ターミナルを開くたびに実行するのではなく、ターミナルの起動時に自動的に実行するようにソースを設定する場合は. ~/.bash_profile
、~/.bashrc
ファイルに追加することができます。
注意:
ターミナルを開くと、ターミナルは(非ログイン)対話モードでbashを開始します~/.bashrc
。つまり、がソースになります。
~/.bash_profile
インタラクティブログインモードで起動した場合にのみ、bashがソースになります。これは通常、コンソール(Ctrl++ Alt+ F1.. F6)にログインするとき、またはを介して接続するときのみですssh
。
このコマンドを使用して、そのユーザーの〜/ .bash_profileを再ロードすることもできます。必ずダッシュを使用してください。
su - username
cd
. .bash_profile
cd
。必要はありません~
。
cd
-現在いるディレクトリからリロードできます:. ~/.bash_profile
現在のシェルターミナルの履歴を失ってもかまわない場合は、
bash -l
それはあなたのシェルをフォークし、bashの別の子プロセスを開きます。-l
パラメータは.bash_profileのが、これについての詳細情報については、非ログインシェルとして実行されませんので、これが必要とされ、ログインシェルとして実行するためのbashを伝え、ここで読みます
現在のシェルを完全に置き換えたい場合は、次のようにすることもできます。
exec bash -l
上記は現在のシェルをforkしませんが、完全に置き換えます。そのため、タイプexit
すると、以前のシェルにドロップするのではなく、完全に終了します。
.bash_profileが存在しない場合は、次のコマンドを実行してみてください。
. ~/.bashrc
または
source ~/.bashrc
.bash_profileの代わりに。あなたはbashrcに関する詳細情報を見つけることができます
私は簡単な回答を投稿したいと思いsource ~/.bash_profile
ます。使用中または上記の回答は機能しますが、これは表示している現在のタブまたはセッションのbashプロファイルのみを再読み込みすることです。すべてのタブ/シェルでbashプロファイルを再ロードする場合は、それぞれに手動でこのコマンドを入力する必要があります。
あなたが使用している場合はITERMを、あなたは使用することができますCMD⌘+ Shift+ I現在のすべてのタブにコマンドを入力します。端末の場合、この問題を参照すると役立つ場合があります。
入力するだけです . ~/.bash_profile
参照:https : //superuser.com/questions/46139/what-does-source-do
私はシエラを実行しており、しばらくの間これに取り組んでいました(推奨されるすべての解決策を試しています)。私は困惑したので、結局自分のコンピューターを再起動してみました!動いた
私の結論は時々ハードリセットが必要であるということです
alias BASHRELOAD=". ~/.bash_profile"
。これを頻繁に行う場合は、単にとしてエイリアス化できますbr
。