![$PATH変数を定義できるものは何ですか? [コピー]](https://linux33.com/image/138750/%24PATH%E5%A4%89%E6%95%B0%E3%82%92%E5%AE%9A%E7%BE%A9%E3%81%A7%E3%81%8D%E3%82%8B%E3%82%82%E3%81%AE%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B%EF%BC%9F%20%5B%E3%82%B3%E3%83%94%E3%83%BC%5D.png)
私は現在、楽しさと教育目的でLinuxを探索して実験しています。
/etc/bash.bashrc
内容を削除しましたが、/etc/profile
ルートディレクトリやローカルユーザーのホームディレクトリに何も設定されておらず、再起動も行いました。
しかし、実行すると、printenv PATH
path値はまだ残ります。
$PATH=usr/local/sbin:/usr/sbin:/sbin:/usr/local/bin:/usr/bin:/bin:/usr/games
$PATHを定義するものは何ですか?
編集する:
Kali Linuxを使用していることを忘れました。
私はこの記事のコメントセクションで、犯人の一人が/etc/profile.d/kali.sh
Flyingdrifterという人によって言及されたことを知りました ->
bashでPATH変数が設定されている場所の完全な表示
(彼のディストリビューションはLinuxMintですが)
$PATH変数が次に縮小されました。
$PATH=/usr/local/bin:/usr/bin:/bin:/usr/games
これは、PATH変数が設定された最後のファイルがある可能性があることを意味します。
答え1
金額も確認してみてください/etc/login.defs
。/etc/environment
詳しくはこちらをご覧ください。 bashでPATH変数が設定されている場所の完全な表示
答え2
ほとんどのディストリビューションには同様のものがあります(あなたのディストリビューションをチェックし、
/etc/bash.bashrc
その/etc/profile
ようなコードがあることを確認してください)for file in /etc/profile.d/*.sh ; do . $file ; done
pam_env
(というファイルがあります。マニュアルページ)、デフォルトで設定されています/etc/environment
。