成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

本篇文章給大家?guī)砹薼inux操作系統(tǒng)基礎(chǔ)知識,其中包括程序開發(fā)環(huán)境、常用命令以及環(huán)境變量的相關(guān)知識,希望對大家有幫助。

一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

1、Linux簡介與程序開發(fā)環(huán)境

1.1 什么是Linux?

Linux是一個可以自由發(fā)布的類UNIX內(nèi)核實現(xiàn),它是一個操作系統(tǒng)的底層核心。Linux是由芬蘭赫爾辛基大學的Linus開發(fā),期間得到了網(wǎng)上廣大UNIX程序員的幫助。它最初是受其教授的Minix(一個小型的類UNIX系統(tǒng))啟發(fā)而開發(fā)的程序,純屬個人的愛好,但是后來它自身逐步發(fā)展成為一個完整的系統(tǒng)

要理解什么是Linux,首先要了解在Linux之前誕生的系統(tǒng)和應用程序——UNIX和GNU軟件。

1.1.1 什么是UNIX?

UNIX操作系統(tǒng)最初是由貝爾實驗室開發(fā)的,當時的貝爾實驗室是電信巨頭AT&T(美國電報電話公司)旗下的一員。如今,它已經(jīng)成為一種非常流行的多用戶、多任務(wù)操作系統(tǒng)。UNIX操作系統(tǒng)可以運行在大量不同種類的硬件平臺上,其適用范圍從PC機到多處理器服務(wù)器和超級計算機。

在UNIX上進行程序開發(fā)有些典型的風格和特點:

1)簡單性:許多很有用的UNIX工具是非常簡單的。“小而簡單”是一種值得學習的技術(shù)。越大、越復雜的系統(tǒng)注定會包含越大、越復雜的錯誤。

2)集中性:讓一個程序很好地執(zhí)行一項任務(wù)好過把所有功能都堆在一起。功能臃腫的程序難于使用和維護,單一目標的程序更容易隨著更好的算法被開發(fā)出來而得到改進。在UNIX中,當用戶出現(xiàn)新的需求時,我們通常是把小工具組合起來完成更復雜的任務(wù),而不是試圖將一個用戶期望的所有功能放在一個大程序里。

3)可重用的組件:將應用程序的核心實現(xiàn)為庫。具有簡單而靈活的編程接口的庫可以幫助其他人開發(fā)出同類程序,或者把這些技術(shù)應用到新的應用領(lǐng)域。

1.1.2 GNU項目和自由軟件基金會

有了操作系統(tǒng)內(nèi)核還不夠,Linux能夠發(fā)展到今天是無數(shù)人共同努力的結(jié)果。操作系統(tǒng)內(nèi)核本身僅僅是可用開發(fā)系統(tǒng)的一小部分。一般的UNIX系統(tǒng)還包括提供系統(tǒng)服務(wù)和工具的應用程序,對于Linux系統(tǒng),這些程序是由許多程序員編寫并自由發(fā)布的。

Linux社區(qū)支持自由軟件的概念,即軟件本身不應受限,它們遵守GNU(GNU是GNU’s Not UNIX的遞歸縮寫)通用公共許可證(GPL)。

自由軟件基金會(Free Software Foundation)是由Richard Stallman創(chuàng)立,其宗旨是:試圖創(chuàng)建一個與UNIX系統(tǒng)兼容,但并不受UNIX名字和源代碼私有權(quán)限制的操作系統(tǒng)和開發(fā)環(huán)境。

GNU項目已經(jīng)為軟件社區(qū)提供了許多UNIX系統(tǒng)上應用程序的仿制品。例如大名鼎鼎的:

GCC:GNU編譯器集,它包括GNU C編譯器。

G++:G++編譯器,是GCC的一部分。

GDB:源代碼級的調(diào)試器。

GNU make

bash:命令解釋器(shell的一種)

有了這些可用的自由軟件,再加上Linux內(nèi)核,我們可以說:創(chuàng)建一個GNU的、自由的類UNIX系統(tǒng)的目標已經(jīng)通過Linux系統(tǒng)實現(xiàn)了。由于GNU軟件做出的貢獻,現(xiàn)在許多人通常把Linux系統(tǒng)稱為GNU/Linux。

1.2 程序開發(fā)環(huán)境

工欲善其事必先利其器,想要進行Linux程序開發(fā)需要先搭建開發(fā)環(huán)境。

1.2.1 Linux環(huán)境安裝

進行 Linux 開發(fā)需要安裝一個 linux 系統(tǒng)環(huán)境,一般使用 VMWare 安裝Ubuntu 系統(tǒng)進行開發(fā)。具體安裝過程大家可以參考以下帖子https://zhuanlan.zhihu.com/p/38797088這里我就不做過多介紹。

1.2.2 SSH

Secure Shell(SSH) 是由 IETF(The Internet Engineering Task Force) 制定的建立在應用層基礎(chǔ)上的安全網(wǎng)絡(luò)協(xié)議。傳統(tǒng)的網(wǎng)絡(luò)服務(wù)程序,如 FTP、 Pop 和 Telnet 其本質(zhì)上都是不安全的;因為它們在網(wǎng)絡(luò)上用明文傳送數(shù)據(jù)、用戶帳號和用戶口令,很容易受到中間人攻擊方式的攻擊。
SSH 分為客戶端 openssh-client 和服務(wù)器 openssh-server,我們需要在 ubuntu 系統(tǒng)下安裝 ssh 服務(wù)器,以便使用 ssh 客戶端登錄到系統(tǒng)。

1)安裝ssh

sudo apt update

sudo apt install openssh-server

2)啟動ssh

sudo service ssh start

3)使用ip addr show命令查看 ubuntu 系統(tǒng) ip

一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

可以看出,當前 ubuntu IP 地址為 192.168.176.148

4)測試 ssh 登錄

在 Ubuntu 上安裝完成 ssh 服務(wù)器后,接下來在 Windows 系統(tǒng)下使用 MobaXterm 進行連接,測試 ssh 服務(wù)器是否安裝成功。 操作步驟如下:
運行 Xterm 軟件,選擇“Session”,如下圖所示:
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

點擊“SSH”并進行設(shè)置,如下圖所示:
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

在該對話框中,選擇“協(xié)議”為“SSH”, “主機名”為 ubuntu 的 IP 地址,用戶名為當前用戶名。端口號使用默認值 22。 設(shè)置完成后,點擊"OK",出現(xiàn)如下命令行終端,表示已經(jīng)連接上虛擬機的ubuntu系統(tǒng)。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

通過這種方法,確定主機和開發(fā)板之間網(wǎng)絡(luò)通訊正常后,即可以登錄到開發(fā)板上。

5)安裝 Visual Studio Code

Visual Studio Code(簡稱 VSCode)是微軟出的一款免費的編輯器,有 Windows、 Linux 和 macOS 三個版本,是一款跨平臺編輯器。 安裝過程大家可以自行搜索,這里主要介紹用于C/C++程序開發(fā)的擴展包,安裝步驟見下圖:
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

常用的有如下插件需要安裝:

C/C++。

C/C++ Snippets,即 C/C++重用代碼塊。

C/C++ Advanced Lint,即 C/C++靜態(tài)檢測 。

Code Runner,即代碼運行。

Include AutoComplete,即自動頭文件包含。

Rainbow Brackets,彩虹花括號,有助于閱讀代碼。

One Dark Pro, VSCode 的主題。

GBKtoUTF8,將 GBK 轉(zhuǎn)換為 UTF8。

ARM,即支持 ARM 匯編語法高亮顯示。

Chinese(Simplified),即中文環(huán)境。

vscode-icons, VSCode 圖標插件,主要是資源管理器下各個文件夾的圖標。

compareit,比較插件,可以用于比較兩個文件的差異

DeviceTree,設(shè)備樹語法插件。

Markdown Preview Enhanced, markdown 預覽插件。

Maridown pdf,將.md 文件轉(zhuǎn)換成其他格式。

2、Linux常用命令

Linux的命令有幾百個,對于初學者來說,常用的并不多,并不需要全部掌握。在平時的學習和工作過程中,遇到了陌生的Linux命令,多查資料,日積月累,自然就記住了。下面為大家介紹Linux最基礎(chǔ)的17個命令。

1、清屏

clear

2、查看服務(wù)器ip地址

ip addr

3、查看時間

date

4、目錄和文件

文件系統(tǒng)像一棵樹,樹干是/(根)目錄,樹枝是子目錄,樹枝后面還有樹枝(子目錄中還有子目錄),目錄的最后是文件。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

目錄和文件的路徑分為絕對路徑和相對路徑,絕對路徑是從根(/)算起,例如/usr/etc/readme.txt。相對路徑是從當前工作目錄算起,如果當前工作目錄是/usr,etc/readme.txt等同于/usr/etc/readme.txt。此外,需要注意的是:一個圓點.表示當前工作目錄;兩個圓點…表示當前工作目錄的上一級目錄。
下面為大家簡單介紹Linux系統(tǒng)目錄結(jié)構(gòu),為了避免諸多使用者對 Linux 系統(tǒng)目錄結(jié)構(gòu)天馬行空,Linux 基金會發(fā)布了 FHS 標準。多數(shù) Linux 發(fā)行版系統(tǒng)都遵循這一標準。注:FHS(Filesystem Hierarchy Standard),文件系統(tǒng)層次化標準,該標準規(guī)定了 Linux 系統(tǒng)中所有一級目錄以及部分二級目錄(/usr 和 /var)的用途。發(fā)布此標準的主要目的就是為了讓用戶清楚地了解每個目錄應該存放什么類型的文件。

1)Linux 根目錄(/)

FHS 認為,Linux 系統(tǒng)的根目錄(/)最為重要,其原因有以下 2 點:
1. 所有目錄都是由根目錄衍生出來的;
2. 根目錄與系統(tǒng)的開機、修復、還原密切相關(guān);
因此,根目錄必須包含開機軟件、核心文件、開機所需程序、函數(shù)庫、修復系統(tǒng)程序等文件,如下表所示。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

2)Linux /usr目錄

usr(注意不是 user),全稱為 Unix Software Resource,此目錄用于存儲系統(tǒng)軟件資源。FHS 建議開發(fā)者,應把軟件產(chǎn)品的數(shù)據(jù)合理的放置在 /usr 目錄下的各子目錄中,而不是為他們的產(chǎn)品創(chuàng)建單獨的目錄。
Linux 系統(tǒng)中,所有系統(tǒng)默認的軟件都存儲在 /usr 目錄下,/usr 目錄類似 Windows 系統(tǒng)中 C:Windows + C:Program files 兩個目錄的綜合體。
FHS 建議,/usr 目錄應具備下表所示的子目錄。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

3)Linux /var 目錄

/var 目錄用于存儲動態(tài)數(shù)據(jù),例如緩存、日志文件、軟件運行過程中產(chǎn)生的文件等。通常,此目錄下建議包含如表 4 所示的這些子目錄。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

5、查看當前目錄

pwd

6、改變當前工作目錄

cd 目錄名

示例:

1)進入/tmp目錄

cd /tmp

2)進入上一級目錄

cd ..

3)進入用戶的主目錄

cd

7、列出目錄和文件信息

ls是list的縮寫,通過 ls 命令不僅可以查看目錄和文件信息,還可以查看目錄和文件的權(quán)限、大小、主人和組等信息。
選項 -l 列出目錄和文件的詳細信息。
示例:

1)列出當前工作目錄下全部的目錄和文件名信息

ls
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

2)列出當前工作目錄下全部的目錄和文件名詳細的信息

ls -l
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

3)正則表達式

正則表達式又稱規(guī)則表達式、通配符,目錄和文件名都支持正則表達式,正則表達式的規(guī)則比較多,在這里我們只需要掌握最常用的兩種:星號 “*” 。

星號 “*” :匹配任意數(shù)量的字符。

例如:ls open*.zip
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

8、創(chuàng)建目錄

1)在當前工作目錄下創(chuàng)建aaa目錄

mkdir aaa

2)在當前工作目錄下創(chuàng)建aaa目錄,并在aaa目錄下創(chuàng)建bbb目錄

mkdir aaa/bbb -p

9、刪除目錄和文件

rm [-rf]目錄或文件

選項-r可以刪除目錄,如果沒有-r只能刪除文件。

選項-f表示強制刪除,不需要確認。

1)刪除aaa目錄

rm aaa -r

2)強制刪除當前工作目錄下的ccc.c文件

rm -f ccc.c

9、移動目錄和文件

mv 舊目錄或文件名 新目錄或文件名

1)把當前工作目錄中的 book.c 文件重命名為 book1.c

mv book.c book1.c

2)如果OPC/test3是一個已經(jīng)存在的目錄,以下命令將把當前工作目錄下的 book.c 文件移動到 OPC/test3 目錄中。

mv book.c OPC/test3

3)如果 OPC/test3目錄不存在,以下命令將把當前工作目錄下的 book.c 文件改名為 OPC/test3。

mv book.c OPC/test3

10、復制目錄和文件

cp [-r] 舊目錄或文件名 新目錄或文件名

注:-r 是遞歸的意思,英文 recursion

選項-r可以復制目錄,如果沒有選項-r只能復制文件。

示例:

1)把當前工作目錄下的book1.c文件復制為book2.c

cp book1.c book2.c

2)把當前工作目錄下的aaa目錄復制為bbb

cp aaa bbb -r

3)把當前工作目錄下的book1.c文件復制為aaa/book1.c

cp book1.c aaa/book1.c

cp book1.c aaa/.

以上兩個命令的效果相同。

4)把當前工作目錄下的aaa目錄復制為/tmp/aaa

cp -r aaa /tmp/aaa

cp -r aaa /tmp/.

以上兩個命令的效果相同。

11、判斷網(wǎng)絡(luò)是否連通

ping -c 包的個數(shù) ip地址或域名

ping用于確定本地主機是否能與另一臺主機成功交換數(shù)據(jù)包,判斷網(wǎng)絡(luò)是否通暢。

1)向本地主機(127.0.0.1)ping五個包

ping -c 5 127.0.0.1
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

2)向百度 www.baidu.com.cn 的服務(wù)器ping五個包

ping -c 5 www.baidu.com.cn
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

可以看出百度的服務(wù)器是可以ping通的。

3)向谷歌 www.google.com 的服務(wù)器ping五個包。

ping -c 5 www.google.com
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

可以看出谷歌的服務(wù)器是ping不通的。

12、顯示文本文件的內(nèi)容

顯示文本文件的內(nèi)容有三個命令:catmoretail

1)cat 命令

cat 文件名

cat命令一次顯示整個文件的內(nèi)容。

cat main.cpp

2)more 命令

more 文件名

為了方便閱讀,more命令分頁顯示文件的內(nèi)容,按空格鍵顯示下一頁,按b鍵顯上一頁,按q鍵退出。

3)tail 命令

tail -f 文件名

tail -f用于顯示文本文件的最后幾行,如果文件的內(nèi)容有增加,就實時的刷新。對程序員來說,tail -f極其重要,可以動態(tài)顯示后臺服務(wù)程序的日志,用于調(diào)試和跟蹤程序的運行。

13、統(tǒng)計文本文件的行數(shù)、單詞數(shù)和字節(jié)數(shù)

wc(word count)功能為統(tǒng)計指定的文件中字節(jié)數(shù)、字數(shù)、行數(shù),并將統(tǒng)計結(jié)果輸出

wc 文件名
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

14、搜索文件中的內(nèi)容

grep "內(nèi)容" 文件名

注意,如果內(nèi)容中沒有空格等特殊字符,可以不用雙引號括起來。

示例:

1)在main.cpp文件中搜索signal

grep signal main.cpp
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

15、搜索文件

1)find

find 目錄名 -name 文件名

參數(shù)說明:
目錄名:待搜索的目錄,搜索文件的時候,除了這個目錄名,還包括它的各級子目錄。
文件名:待搜索的文件名匹配的規(guī)則。
示例:
從 OPC 目錄開始搜索,把全部的 *.cpp 文件顯示出來。

find OPC -name *.cpp

2)locate

locate 文件名

示例:
搜索open62541.c文件

locate open62541.c
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

注意:第一次使用該命令,可能需要更新數(shù)據(jù)庫,按照提示的命令執(zhí)行一下就好了.

find多用于在某個目錄下進行模糊搜索,而locate則是進行全盤準確定位。

16、chmod命令

用于改變linux文件或目錄的訪問權(quán)限。該命令有兩種用法。一種是包含字母和操作符表達式的文字設(shè)定法;另一種是包含數(shù)字的數(shù)字設(shè)定法。

每一文件或目錄的訪問權(quán)限都有三組,每組用三位表示,分別為文件屬主的讀、寫和執(zhí)行權(quán)限;與屬主同組的用戶的讀、寫和執(zhí)行權(quán)限;系統(tǒng)中其他用戶的讀、寫和執(zhí)行權(quán)限。

舉例:ls -l example
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

第一列共有10個位置,第一個字符指定了文件類型。在通常意義上,一個目錄也是一個文件。如果第一個字符是橫線,表示是一個非目錄的文件。如果是d,表示是一個目錄。從第二個字符開始到第十個共9個字符,3個字符一組,分別表示了3組用戶對文件或者目錄的權(quán)限。權(quán)限字符用橫線代表空許可,r代表只讀,w代表寫,x代表可執(zhí)行。

常用參數(shù):

  • -c 當發(fā)生改變時,報告處理信息

  • -R 處理指定目錄以及其子目錄下所有文件

權(quán)限范圍:

  • u :目錄或者文件的當前的用戶

  • g :目錄或者文件的當前的群組

  • o :除了目錄或者文件的當前用戶或群組之外的用戶或者群組

  • a :所有的用戶及群組

權(quán)限代號:

  • r :讀權(quán)限,用數(shù)字4表示

  • w :寫權(quán)限,用數(shù)字2表示

  • x :執(zhí)行權(quán)限,用數(shù)字1表示

  • – :刪除權(quán)限,用數(shù)字0表示

  • s :特殊權(quán)限

示例:

1)刪除文件 example 所有用戶可執(zhí)行權(quán)限

chmod a-x example
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

2)給 example 的屬主分配讀、寫、執(zhí)行(7)的權(quán)限,給 example 的所在組分配讀、執(zhí)行(5)的權(quán)限,給其他用戶分配執(zhí)行(1)的權(quán)限

chmod 751 example -c
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

3)將aaa目錄及其子目錄所有文件添加可讀權(quán)限

chmod u+r,g+r,o+r -R text/ -c
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

17、查看系統(tǒng)磁盤空間

df [-h] [-T]

選項-h以方便閱讀的方式顯示信息:

df -h
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

選項-T列出文件系統(tǒng)類型:

df -h -T
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

3、Linux環(huán)境變量講解

3.1 環(huán)境變量的概念

3.1.1 什么是環(huán)境變量?

程序(操作系統(tǒng)命令和應用程序)的執(zhí)行都需要運行環(huán)境,這個環(huán)境是由多個環(huán)境變量組成的。

3.1.2 環(huán)境變量的分類

1)按生效的范圍分類。

系統(tǒng)環(huán)境變量:公共的,對全部的用戶都生效。

用戶環(huán)境變量:用戶私有的、自定義的個性化設(shè)置,只對該用戶生效。

2)按生存周期分類。

永久環(huán)境變量:在環(huán)境變量腳本文件中配置,用戶每次登錄時會自動執(zhí)行這些腳本,相當于永久生效。

臨時環(huán)境變量:使用時在Shell中臨時定義,退出Shell后失效。

3)Linux環(huán)境變量

Linux環(huán)境變量也稱之為Shell環(huán)境量變,以下劃線和字母打頭,由下劃線、字母(區(qū)分大小寫)和數(shù)字組成,習慣上使用大寫字母,例如PATH、HOSTNAME、LANG等。

3.2 常用的環(huán)境變量

3.2.1 查看環(huán)境變量

1)env命令

在Shell下,用env命令查看當前用戶全部的環(huán)境變量。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

上圖只截取了部分環(huán)境變量,并非全部。

注:用env命令的時候,滿屏顯示了很多環(huán)境變量,不方便查看,可以用grep篩選。

env|grep 環(huán)境變量名

例如查看環(huán)境變量名中包含PATH的環(huán)境變量。

env|grep PATH
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

2)echo命令

echo $環(huán)境變量名

例如:echo $LANG

3.2.2 常用的環(huán)境變量

1)PATH

可執(zhí)行程序的搜索目錄,可執(zhí)行程序包括Linux系統(tǒng)命令和用戶的應用程序,PATH變量的具體用法本文后面的章節(jié)中有詳細的介紹。

2)LANG

Linux系統(tǒng)的語言、地區(qū)、字符集。

echo $LANG
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

3)HOSTNAME

服務(wù)器的主機名。

echo $HOSTNAME

4)SHELL

用戶當前使用的Shell解析器。

echo $SHELL
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

5)HISTSIZE

保存歷史命令的數(shù)目。

6)USER

當前登錄用戶的用戶名。

echo $USER

7)HOME

當前登錄用戶的主目錄。

echo $HOME

8)PWD

當前工作目錄。

echo $PWD
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

9)LD_LIBRARY_PATH

C/C++語言動態(tài)鏈接庫文件搜索的目錄,它不是Linux缺省的環(huán)境變量,但對C/C++程序員來說非常重要,具體用法本文后面的章節(jié)中有詳細的介紹。

3.3 設(shè)置環(huán)境量

export 變量名='值'

如果環(huán)境變量的值沒有空格等特殊符號,可以不用單引號包含。

示例:

export PATH=$PATH:.

以上命令為當前shell的環(huán)境變量PATH添加.目錄(是.)

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:.

以上命令為當前shell的環(huán)境變量LD_LIBRARY_PATH添加.目錄

采用export設(shè)置的環(huán)境變量,在退出Shell后就會失效,下次登錄時需要重新設(shè)置。如果希望環(huán)境變量永久生效,需要在登錄腳本文件中配置。

3.3.1 系統(tǒng)環(huán)境變量

系統(tǒng)環(huán)境變量對全部的用戶生效,設(shè)置系統(tǒng)環(huán)境變量有三種方法。

1)在/etc/profile文件中設(shè)置。

用戶登錄時執(zhí)行/etc/profile文件中設(shè)置系統(tǒng)的環(huán)境變量。但是,Linux不建議在/etc/profile文件中設(shè)置系統(tǒng)環(huán)境變量。

2)在/etc/profile.d目錄中增加環(huán)境變量腳本文件,這是Linux推薦的方法。

/etc/profile在每次啟動時會執(zhí)行 /etc/profile.d下全部的腳本文件。/etc/profile.d比/etc/profile好維護,不想要什么變量直接刪除 /etc/profile.d下對應的 shell 腳本即可。

/etc/profile.d目錄下有很多腳本文件,例如:

ls /etc/profile.d
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

3)在/etc/bashrc文件中設(shè)置環(huán)境變量。

該文件配置的環(huán)境變量將會影響全部用戶使用的bash shell。但是,Linux也不建議在/etc/bashrc文件中設(shè)置系統(tǒng)環(huán)境變量。

3.3.2 用戶環(huán)境變量

用戶環(huán)境變量只對當前用戶生效,設(shè)置用戶環(huán)境變量也有多種方法。

在用戶的主目錄,有幾個特別的文件,用ls是看不見的,用ls .bash*可以看見。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

1).bash_profile(推薦首選)

當用戶登錄時執(zhí)行,每個用戶都可以使用該文件來配置專屬于自己的環(huán)境變量。

2).bashrc

當用戶登錄時以及每次打開新的Shell時該文件都將被讀取,不推薦在里面配置用戶專用的環(huán)境變量,因為每開一個Shell,該文件都會被讀取一次,效率肯定受影響。

3).bash_logout

當每次退出系統(tǒng)(退出bash shell)時執(zhí)行該文件。

4).bash_history

保存了當前用戶使用過的歷史命令。

3.3.3 環(huán)境變量腳本文件的執(zhí)行順序

環(huán)境變量腳本文件的執(zhí)行順序如下:

/etc/profile->/etc/profile.d->/etc/bashrc->用戶的.bash_profile->用戶的.bashrc

同名的環(huán)境變量,如果在多個腳本中有配置,以最后執(zhí)行的腳本中的配置為準。

3.4 重要環(huán)境變量的詳解

1、PATH環(huán)境變量

可執(zhí)行程序的搜索目錄,可執(zhí)行程序包括Linux系統(tǒng)命令和用戶的應用程序。如果可執(zhí)行程序的目錄不在PATH指定的目錄中,執(zhí)行時需要指定目錄。

1)PATH環(huán)境變量存放的是目錄列表,目錄之間用冒號:分隔,最后的圓點.表示當前目錄。

export PATH=目錄1:目錄2:目錄3:…目錄n:.

2)PATH缺省包含了Linux系統(tǒng)命令所在的目錄(/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin),如果不包含這些目錄,Linux的常用命令也無法執(zhí)行(要輸入絕對路徑才能執(zhí)行)。

示例:

ls /bin/ls 可以查看到ls命令位于/bin目錄下
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

此時我們執(zhí)行命令 export PATH= 將PATH變量清空,再執(zhí)行ls命令,系統(tǒng)會提示找不到ls命令。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

采用絕對路徑就可以使用,/bin/ls
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

為環(huán)境變量PATH添加/bin目錄后,ls也可以執(zhí)行了。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

3)如果PATH變量中沒有包含圓點.,執(zhí)行當前目錄下的程序需要加./或使用絕對路徑。

示例:
在當前目錄下執(zhí)行 example 命令,提示無法執(zhí)行。
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

將圓點.添加到環(huán)境變量PATH之后,便可以執(zhí)行了。

export PATH=$PATH:.
一起聊聊linux操作系統(tǒng)的常用命令及環(huán)境變量

2、LD_LIBRARY_PATH環(huán)境變量

C/C++語言動態(tài)鏈接庫文件搜索的目錄,它不是Linux缺省的環(huán)境變量,但對C/C++程序員來說非常重要。

LD_LIBRARY_PATH環(huán)境變量存放的也是目錄列表,目錄之間用冒號:分隔,最后的圓點.表示當前目錄,與PATH的格式相同。

export LD_LIBRARY_PATH=目錄1:目錄2:目錄3:......目錄n:.

這個環(huán)境變量我們會在下次課講解Linux靜態(tài)庫與動態(tài)庫時詳細介紹。

3.5 環(huán)境變量的生效

1)在Shell下,用export設(shè)置的環(huán)境變量對當前Shell立即生效,Shell退出后失效。

2)在腳本文件中設(shè)置的環(huán)境變量不會立即生效,退出Shell后重新登錄時才生效,或者用source命令讓它立即生效,例如:

source /etc/profile

3.6 應用經(jīng)驗

雖然設(shè)置環(huán)境變量的方法有多種,但是建議大家系統(tǒng)環(huán)境變量在/etc/profile.d目錄中配置,用戶環(huán)境變量在用戶的.bash_profile中配置,不建議在其它腳本文件中配置環(huán)境變量,會增加系統(tǒng)運維的麻煩,容易出錯。

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
欧美性XXXXX极品| 欧美高清性色生活片免费观看| 久久人妻无码中文字幕| 久久人人妻人人妻人人澡av| 美女脱个精光露出奶头和尿口| 女教师娇喘潮喷抽搐在线视频| 人妻AV无码系列专区移动可看| 上课忘穿内裤被老师摸到高潮| 无遮挡A级毛片免费看| 亚洲丰满性熟妇ⅩXXOOO太阳| 伊人久久大香线焦AV色| JΑPΑNESEHD熟女熟妇伦| 丰满少妇被猛烈进入高清APP| 国产午夜视频在线观看| 久久男人AV资源网站无码| 欧美黑人又大又粗XXXXX吞精| 日韩人妻无码一区二区三区| 性妇WBBBB搡BBBB嗓小说| 亚洲中文字幕无码久久2020| 99久久婷婷国产综合亚洲| 公玩弄年轻人妻HD| 精品97国产免费人成视频| 欧美成人精品手机在线| 天干天干啦夜天干天天爽| 亚洲另类人妻小说| 99久久久国产精品免费牛牛| 国产成人猛男69精品视频| 久久99久久99精品免观看| 欧美一性一乱一交一视频C| 无码国内精品人妻少妇蜜桃视频| 亚洲中文成人中文字幕| 把腿张开自慰给我看| 国内精品自线一区麻豆| 欧美成人区精品一区二区婷婷| 铜铜铜铜铜铜铜好大好深色板| 亚洲熟妇无码av叧娄本色| 爱情岛论坛自拍亚洲品质极速福利| 国产日韩AⅤ无码一区二区三区| 久久亚洲中文字幕精品一区| 日日婷婷夜日日天干| 亚洲人成无码网站久久99热国产| ZOOM与人性ZOOM| 狠狠躁天天躁夜夜躁婷婷| 欧美人与物VIDEOS另类| 性XXXX欧美老妇胖老太性多毛| 综合成人亚洲偷自拍色| 国产激情久久久久影院蜜桃AV| 老男人把舌头伸进我下面| 日韩欧美群交P内射捆绑| 亚洲无码成人av| 风流老熟女一区二区三区| 久久久久精品日韩久久久| 三个媳妇一锅烩大团圆| 野花高清在线观看免费3| 高潮VIDEOSSEXOHD潮喷| 看全色黄大色黄女片爽在线看| 熟妇人妻一区二区三区四区| 中国女人内射69XXXXⅩ视频| 国产精品毛片一区内射| 欧美成年黄网站色视频| 亚洲大色堂人在线无码| 吃奶呻吟打开双腿做受视频免费 | 小SAO货CAO得你舒服么| 99国精产品灬源码1688钻| 好了AV四色综合无码久久| 人体艺术大胆图片| 亚洲综合成人AⅤ在线网站| 国产成人精品日本亚洲专区不卡 | 天天躁夜夜躁天干天干2020| 中文字幕,久热精品,视频在线| 国产熟妇一区二区三区AⅤ在线 | 丁香花在线观看免费观看图片| 久久综合噜噜激激的五月天| 五月丁香伊人久久91视频| TPU色母和子色母的性能| 久久不见久久见免费影院国语 | 国产精品亚洲精品日韩已方| 欧美颜射内射中出口爆在线| 亚洲熟妇无码AV| 国产女人18毛片水真多| 人妻无码全彩里番ACG视频| 野花视频在线手机免费观看| 国产情侣疯狂作爱系列| 日本适合十八岁以上的护肤品一| 中国老太太X×××XHD| 姬小满开叉裙穿搭注意事项| 少妇高潮太爽了在线播放| AV无码专区亚洲AVL在线观看| 久久精品久久久久久久精品| 小SAO货都湿掉奶头好硬男女| 大香伊蕉在人线国产最新75| 欧美黑人巨大XXXX黑人猛交| 野花香视频在线观看社区| 国产无套内射又大又猛又粗又爽| 色猫咪AV在线网址| PYTHON人马大战| 男人把女人桶到爽免费应用 | 久久亚洲AV无码AV男人的天堂| 亚洲AV无码专区在线电影天堂| 国产AV无码专区亚洲AVJUL| 人妻有码中文字幕| 97超级碰碰碰久久久久APP| 久久久久亚洲AV无码专区首JN| 亚洲成亚洲乱码一二三四区软件| 国产精品白丝无码ThePorn| 日韩人妻一区二区| А√天堂资源地址在线官网BT| 免费天堂无码人妻成人AV电影| 亚洲最大的av网站| 精品香蕉一区二区三区| 亚洲AV无码成人片在线观看 | 国产精品亚洲精品日韩已满| 四川丰满少妇A级毛片| 成人毛片18女人毛片免费视频末 | 亚洲精品1卡2卡三卡23卡| 国产在线精品一区二区三区直播 | 羞羞漫画十八禁啪啪漫画免费| 公交车后车座的疯狂的做小| 日韩VS欧美VS亚洲VS无码| 暗交拗女一区二区三区| 欧洲一卡二卡三卡| YELLOW高清免费观看日本| 欧美黑人极品猛少妇色XXXXⅩ | 亚洲午夜久久久久久久久电影网| 娇妻被交换粗又大又硬视频| 亚洲国产成人丁香五月激情 | 国产精品白丝无码ThePorn| 偷玩朋友熟睡人妻| 国产精品久久久久久TV| 无码人妻一区二区三区免费看| 国产精品久久久久久婷婷| 无码AV免费网站| 国产麻豆MD传媒视频| 亚洲18色成人网站WWW| 黑人性狂欢在线播放| 亚洲国产成人精品无码区在线秒播 | FREE性中国熟女HD交换| 欧美性猛交aaaa乱大交| 拔萝卜电视剧高清免费| 日韩人妻无码一区二区三区综合 | 乱码视频午夜在线观看| 2019午夜福利不卡片在线| 欧美熟妇与小伙性欧美交| 被强迫的爱人 电影| 日韩欧国产精品一区综合无码 | 国产精品国产三级国产专I| 午夜A级理论片在线播放717| 好儿子妈妈今天就是你的女人| 亚洲欧洲成人AV电影网| 麻豆XXXXXX在线观看| CHINESE熟女熟妇2乱| 日韩精品无码AV中文无码版 | 小S货又想挨C了叫大声点小| 精品日产一卡2卡三卡4卡自拍| 永久免费AⅤ无码网站在线观看| 女人脱精光直播APP下载| 成 人 黄 色 网站 小说 免| 偷拍农村老熟妇XXXXX7视频| 幻女FREE性俄罗斯毛片| 尤物AV无码国产在线看| 欧美性色黄大片手机版| 国产AV一区二区三区无码野战| 亚洲AV成人无码精品网站| 久久久精品人妻人人澡| AV最新高清无码专区| 少妇乱人伦无码视频| 国内少妇高潮嗷嗷叫在线播放| 夜夜爽妓女8888视频免费观看| 欧美乱码卡1卡2卡三卡四卡 | 婷婷妺妺窝人体色www久久| 狠狠色丁香久久婷婷综合蜜芽五月| 一线产区与二线产区的定义| 人妻丰满熟妇AV无码区免| 国产精品久久久爽爽爽麻豆色哟哟 | 女人18毛片A级毛片免费视频| 不屈的儿媳妇电视剧汉语版| 小浪蹄子蜜水噗呲噗呲的| 久久亚洲熟妇熟女ⅩXXXHD| 波多野结衣AV一区二区三区中文| 下面饿了想吃大香肠| 久久午夜夜伦鲁鲁片免费无码影院 | 用舌头去添高潮无码视频 | 丰满浓毛的大隂户自慰| 亚洲国产精品福利片在线观看 | 成人精品视频一区二区不卡| 亚洲 欧美 中文 日韩AⅤ| 麻豆一区区三区四区产品麻豆| 大欧派拔萝卜游戏| 亚洲精品自在在线观看| 人妻丰满妇岳av无码区HD| 国产小受呻吟GV视频在线观看| 中文字幕无码久久一区| 丝瓜草莓视频APP| 久久久久久国产精品免费无码| 八戒八戒神马影院在线电影4| 亚洲AV永久精品无码桃色| 欧美亚洲日韩AⅤ在线观看| 国产一卡2卡3卡4卡无卡国色| 999久久久无码国产精品| 亚洲 中文字幕在线播|