/etc/profile - 環境變量

一、此文件涉及系統的環境,即環境變量相關。這裏修改會對所有用戶起作用。/etc/profile會首先執行/etc/profile.d/目錄下的所有*.sh文件。

       1. Linux是一個多用戶操作系統。用戶登錄或切換(即Login shell 啓動)時都有一個專用的運行環境,但首先執行 /etc/profile 。而Non-login shell 不會調用這個腳本。各用戶的默認環境(一組環境變量的定義)一般相同。用戶也可以自行配置運行環境,即修改相應的系統環境變量。

        2. 在 /etc/profile 文件中設置的變量是全局變量。而 .bashrc文件(在用戶的家目錄下)則只對當前用戶有用。~/.bashrc、~/.bash_file 是當前用戶目錄下的配置信息。修改後用 source 命令更新。

  3. 操作環境變量:(在profile文件添加或修改的內容需要註銷系統才能生效。同名的環境變量,後寫入的起作用)

                Ⅰ.在文件末尾添加環境變量(引號可省略):"NAME=<name>"

                Ⅱ.添加一個customer.sh文本文件到 /etc/profile.d/目錄。

                     寫入環境變量:export PATH=$PATH:/opt/lamp/mysql/bin

                     立即生效:source /etc/profile(下一次登陸也會生效)。

        4. 常見的環境變量:(最好通過在/etc/profile.d/路徑下新建腳本,修改環境變量),一些軟件會新建自己的環境變量

-rw-r--r--. 1 root root 1127 4月  17 2012 colorls.csh
-rw-r--r--. 1 root root 1143 4月  17 2012 colorls.sh
-rw-r--r--. 1 root root   92 9月  21 2012 cvs.csh
-rw-r--r--. 1 root root   78 9月  21 2012 cvs.sh
-rw-r--r--. 1 root root  192 2月   3 2012 glib2.csh
-rw-r--r--. 1 root root  192 2月   3 2012 glib2.sh
-rw-r--r--. 1 root root 1741 2月  22 2013 lang.csh
-rw-r--r--. 1 root root 2706 2月  22 2013 lang.sh
-rw-r--r--. 1 root root  122 2月   7 2007 less.csh
-rw-r--r--. 1 root root  108 2月   7 2007 less.sh
-rw-r--r--. 1 root root  976 9月  24 2011 qt.csh
-rw-r--r--. 1 root root  912 9月  24 2011 qt.sh
-rw-r--r--. 1 root root   97 4月   5 2012 vim.csh
-rw-r--r--. 1 root root  269 4月   5 2012 vim.sh
-rw-r--r--. 1 root root  169 5月  20 2009 which2.sh

        PATH: 預設可執行文件或命令的搜索路徑。env命令顯示所有的環境變量 。環境變量以" : "分開。環境變量名前" $ "符號表示該變量本次定義之前的值。

        USER: 用戶登錄時使用的用戶名。

        HOME:當前用戶主目錄

        SHELL:是指當前用戶用的是哪種Shell。set命令顯示所有本地定義的Shell變量。

        LOGNAME:指當前用戶的登錄名。其值爲$USER。

        HOSTNAME:所使用的主機名。供應用程序使用。

        PS1:基本提示符(格數如下,用法如右):export PS1="[\u@\h \w]\$"

                \d :代表日期,格式爲weekday month date,例如:Wed Dec 12

                \H :完整的主機名稱。例如:hostname是debian.linux

                \h :僅取主機的第一個名字,如上例,則爲debian,.linux則被省略

                \t :顯示時間爲24小時格式,如:HH:MM:SS

                \T :顯示時間爲12小時格式

                \A :顯示時間爲24小時格式:HH:MM

                \u :當前用戶的賬號名稱 如:root

                \v :BASH的版本信息  如:3.2

                \w :完整的工作目錄名稱。家目錄會以 ~代替 如顯示/etc/default/

                \W :利用basename取得工作目錄名稱,只會列出最後一個目錄。如上例則只顯示default

                \# :下達的第幾個命令

                \$ :提示字符,如果是root時,提示符爲:# ,普通用戶則爲:$ 

        PS2:附屬提示符,默認爲“>”。 具體參考    http://os.51cto.com/art/201205/334954.htm

        MAIL: 存放用戶電子郵件的郵箱(ASCII碼文件)。

        HISTSIZE: 保存的歷史記錄數。

        INPUTRC: 存放的是針對鍵盤熱鍵的信息(ASCII碼文件)。

        LANG/LANGUGE:語言相關的環境變量,多語言用戶可以修改。

        5. 使環境變量生效:source /etc/profile  或者  ./profile,執行一下文件。但不能用 sh /etc/profile。sh 是在子 shell 進程中執行的,即使PATH改變了也不會反應到當前環境中。而 source 是在當前 shell 進程中執行的,所以我們能看到PATH的改變。

        6. export 相當於導出變量。" = "賦值符號定義的變量只在當前shell中可用,外部(子shell中)使用時,定義時需要用export A=“xxx”,或在使用時 使用export A。 如果希望下載軟件後不加入路徑就能啓動該程序,要把可執行程序的路徑加入 PATH 中。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章