.bash_loginと.bash_profileが見つかりません
root@linux:~# locate .bash*
/etc/bash.bashrc
/etc/skel/.bashrc
/etc/skel/.bashrc.original
/home/noroot/.bashrc
/home/noroot/.bashrc.original
/root/.bash_history
/root/.bashrc
/usr/share/base-files/dot.bashrc
/usr/share/doc/adduser/examples/adduser.local.conf.examples/bash.bashrc
/usr/share/doc/adduser/examples/adduser.local.conf.examples/skel/dot.bashrc
/usr/share/kali-defaults/.bashrc
root@linux:~#
ユーザーごとに常に1つの.bashrcファイルと.bash_profileファイルしかありませんか?
また、.bashrcと.bash_profileは常に/ home/"user name"ディレクトリにありますか?
Bashがデフォルトで参照するのはユーザーのホームディレクトリだけです(はい)。 Linuxには通常、単一のソース(/ etc/skel)もあります。ただし、ユーザーのホームディレクトリは/ homeの下にある必要はありません。
質問を編集して、.bash_loginファイルと.bash_profileファイルの場所を確認したようです。に基づく #
プロンプト、これをrootとして実行していると想定します。その場合、ファイルは
/root/.bash_history
/root/.bashrc
ユーザーのホームディレクトリについては、上記の私の元の回答を参照してください。常に/ homeとは限りません。この場合、ルートのホームディレクトリは/root
。
_man bash
_によると:
Bashが対話型ログインシェルとして、または--loginオプションを使用して非対話型シェルとして呼び出されると、ファイル/ etc/profileが存在する場合、そのファイルからコマンドを読み取り、実行します。そのファイルを読み取った後、〜/ .bash_profile、〜/ .bash_login、および〜/ .profileをこの順序で検索し、存在し、読み取り可能な最初のコマンドからコマンドを読み取って実行します。
_~/.bash_profile
The personal initialization file, executed for login shells
~/.bashrc
The individual per-interactive-Shell startup file
_
_/etc/bashrc
_を含む_/etc/bash.bashrc
_(_System wide functions and aliases
_ DebianベースのLinux)もあります。デフォルトでは、これは非対話型、非ログインシェルであっても設定されています。
編集:
パスのtilde
は、現在ログインしているユーザーの_home directory
_を示します。 Bashは、(現在ログインしているユーザーごとに)_~/.bash_profile, ~/.bash_login, or ~/.profile
_のいずれかを、この順序で、コマンドの読み取りと実行にのみ使用できます。 (通常、Debianベースのオペレーティングシステムには_~/.bash_profile or ~/.bash_login.
_がありません。ファイルは_~/.profile
_を使用します。このファイルは、_~/.bash_profile or ~/.bash_login
_が作成されない限り、読み取られて使用されることを説明しています。
_
#~/.profile: executed by the command interpreter for login shells.
_
#This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
が存在します。
bashrc
ファイルの場所はディストリビューションによって異なります...これがシステムの基本的なリストですbashrc
:/etc/bashrc
(Redhat、Fedoraなど)/etc/bash.bashrc
(Debian、Ubuntu、Linux Mint、Backtrack、Kaliなど)/etc/bash.bashrc.local
(Suse、OpenSuseなど)
次に、プライベートシングルユーザーbashrc
があります。これは、ほとんどの場合、基本的にすべてのディストリビューションの~/.bashrc
に保存されます...ディストリビューションの1つがない場合リストされている、または特別なシステムがある場合は、そのディストリビューションまたはシステムについてGoogleでbashrc
の場所をいつでも検索できます...
よろしく、
面白い...
すでに述べたように、bashrcのスケルトンは/etc/skel/.bashrcにあります。ユーザーごとに異なるbash構成が必要な場合は、そのユーザーのホームフォルダーに.bashrcファイルを配置する必要があります。
.bash_profileと.bash_loginに関しては、ユーザーはそれらを手動で作成し、bashrc経由でリンクする必要があります。 bash_profileとbash_loginは、ロードしたさまざまな設定をより整理された感じにするために存在します。私は個人的にすべてのエイリアスをbash_profileに保持しているので、bashrcで混乱をソートして簡単な編集を行う必要はありません。
.bashrcファイルの内容の例を次に示します。
if [ -f ~/.bash_profile ]; then
. ~/.bash_profile
fi