/user/games 等的登入 shell 路徑設定在哪裡?

/user/games 等的登入 shell 路徑設定在哪裡?

當我在 ubuntu 中啟動終端機時,我得到以下路徑echo $PATH

/home/myuser/anaconda3/condabin:/home/myuser/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

我想從我的 中刪除那些帶有 games 關鍵字的路徑$PATH,但我找不到像/usr/games, /user/local/games,這樣的路徑/usr/sbin的設定位置。

我嘗試 grep bygrep xxx ~/.* -l

這給出了設定等/usr/bin的文件/usr/local/bin

但不適用於上述提到的games路徑sbin。我如何從它的設置位置找到它?

答案1

有幾個地方可以設置。首先,可以設定為以下一項或多項:

  • 任何 shell 設定檔腳本(例如~/.bashrc/etc/profile/etc/bash.bashrc/etc/profile.d/*等)
  • /etc/login.defs
  • /etc/security/pam_env.conf
  • /etc/environment
  • $HOME/.pam_environment

答案2

如果未在您的個人環境中設置,則會為每個使用者設定。這意味著低於某處/etc。轉到/etc並發出:

grep usr.games * */* */*/* 2> /dev/null

在 Ubuntu 安裝上,這將為您提供:

environment:PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"
login.defs:ENV_PATH     PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
manpath.config:MANPATH_MAP      /usr/games              /usr/share/man
passwd:games:x:5:60:games:/usr/games:/usr/sbin/nologin
passwd-:games:x:5:60:games:/usr/games:/usr/sbin/nologin

這些passwd文件用於用戶遊戲,因此並不重要。manpath用於閱讀手冊。那麼,如果您將其從environment和中刪除login.defs,您的遊戲時光就結束了。

相關內容