Shell
Kali Linux 安裝中無法設置環境路徑變數
我在我的 linux 機器上下載了 Flutter 和 Android Studio。這是一個kali linux安裝。我想為android studio和flutter永久添加環境路徑變數,所以當我啟動shell時,我不必每次都添加它們。我想添加到所有使用者。我做了一些搜尋,發現
/etc/profile
如果要為所有使用者添加路徑,則必須添加路徑。但似乎沒有任何效果。文件的原始內容
# /etc/profile: system-wide .profile file for the Bourne shell (sh(1)) # and Bourne compatible shells (bash(1), ksh(1), ash(1), ...). if [ "`id -u`" -eq 0 ]; then PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" else PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games" fi export PATH if [ "${PS1-}" ]; then if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then # The file bash.bashrc already sets the default PS1. # PS1='\h:\w\$ ' if [ -f /etc/bash.bashrc ]; then . /etc/bash.bashrc fi else if [ "`id -u`" -eq 0 ]; then PS1='# ' else PS1='$ ' fi fi fi if [ -d /etc/profile.d ]; then for i in /etc/profile.d/*.sh; do if [ -r $i ]; then . $i fi done unset i fi
:
我像這樣在第 4 行的 else 之後使用 a 來添加我的路徑PATH="/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/user1/Flutter/flutter/bin:/home/user1/android-studio/bin"
保存文件並重新啟動機器,然後
echo $PATH
在外殼中,但輸出就是這樣:
/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
然後我嘗試了不同的方法刪除了以前的更改並添加了
PATH=$PATH:/home/user1/Flutter/flutter/bin:/home/user1/android-studio/bin
就在導出路徑之前,保存重新啟動機器,它也沒有工作。該
echo $PATH
命令列印與上述相同的路徑。我如何完成我想要完成的事情。我在這個網站上查看了幾個類似的問題,大多數都建議我在上面做了什麼。我做錯什麼了嗎?
編輯 這是
.profile
我的使用者目錄中的內容。我只有一個使用者。# ~/.profile: executed by the command interpreter for login shells. # This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login # exists. # see /usr/share/doc/bash/examples/startup-files for examples. # the files are located in the bash-doc package. # the default umask is set in /etc/profile; for setting the umask # for ssh logins, install and configure the libpam-umask package. #umask 022 # if running bash if [ -n "$BASH_VERSION" ]; then # include .bashrc if it exists if [ -f "$HOME/.bashrc" ]; then . "$HOME/.bashrc" fi fi # set PATH so it includes user's private bin if it exists if [ -d "$HOME/bin" ] ; then PATH="$HOME/bin:$PATH" fi # set PATH so it includes user's private bin if it exists if [ -d "$HOME/.local/bin" ] ; then PATH="$HOME/.local/bin:$PATH" fi
將以下行添加到您的
/etc/environment
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/user1/Flutter/flutter/bin:/home/user1/android-studio/bin
在debian wiki上解釋:
將所有全域環境變數,即影響所有使用者的變數,放入
/etc/environment
請記住,此文件由 PAM 讀取,而不是由 shell 讀取。您不能在此處使用 shell 擴展。例如
MAIL=$HOME/Maildir/
不會工作!對於如何為所有使用者配置環境的問題,除了 PAM 可以處理的瑣碎情況之外,沒有與 shell 無關且與登錄無關的解決方案。
您可以註銷然後登錄或
source /etc/environment
.