完美介紹linux環(huán)境變量與部分命令
linux環(huán)境變量介紹
環(huán)境變量:bash shell用一個稱作“環(huán)境變量(environment variables)”的特性來存儲有關(guān)shell會話和工作環(huán)境的信息,它允許你在內(nèi)存中存儲數(shù)據(jù),以便運行在shell上的程序和腳本訪問,這些數(shù)據(jù)可以用來識別用戶、賬戶、系統(tǒng)、shell特性以及任何其他你需要存儲的數(shù)據(jù)。
shell中的環(huán)境變量有全局環(huán)境變量和局部環(huán)境變量,通過KV(variable=value)的形式聲明一個局部變量,export這個局部變量,則升級成為全局環(huán)境變量。
關(guān)于linux的設(shè)置,有很多方法,可能大家會有所混淆。例如:
1、你知道/etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc 的區(qū)別嗎?
2、Linux 中 rc.local、init.d、init 、rc.d等文件的作用和區(qū)別是什么?
看到這些,不免有些頭大,今天就簡單的整理一下!
/etc/profile、/etc/bashrc、~/.bash_profile、~/.bashrc
/etc/profile:此文件為系統(tǒng)的每個用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次登錄時,該文件被執(zhí)行并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置。
/etc/bashrc:為每一個運行bash shell的用戶執(zhí)行此文件.當(dāng)bash shell被打開時,該文件被讀取。
~/.bash_profile:每個用戶都可使用該文件輸入專用于自己使用的shell信息,當(dāng)用戶登錄時,該文件僅僅執(zhí)行一次!默認(rèn)情況下,他設(shè)置一些環(huán)境變量,執(zhí)行用戶的.bashrc文件。
~/.bashrc:該文件包含專用于你的bash shell的bash信息,當(dāng)?shù)卿洉r以及每次打開新的shell時,該 該文件被讀取。
區(qū)別:
/etc/profile,/etc/bashrc 是系統(tǒng)全局環(huán)境變量設(shè)定 ~/.profile,~/.bashrc用戶目錄下的私有環(huán)境變量設(shè)定
讀取環(huán)境變量一般有三步:
一、讀入的是全局環(huán)境變量設(shè)定的文檔/etc/profile,然后根據(jù)其內(nèi)容讀取額外的設(shè)定的文檔,如 /etc/profile.d和/etc/inputrc
二、根據(jù)不同使用者帳號,去其他目錄讀取~/.bash_profile,如果這讀取不了就讀取~/.bash_login,這個也讀取不了才會讀取 ~/.profile,這三個文檔設(shè)定基本上是一樣的,讀取有優(yōu)先關(guān)系
三、最后再根據(jù)用戶帳號讀取~/.bashrc
~/.profile與~/.bashrc相同點:
都具有個性化定制功能 ~/.profile可以設(shè)定本用戶專有的路徑,環(huán)境變量,等,它只能登入的時候執(zhí)行一次 ~/.bashrc也是某用戶專有設(shè)定文檔,可以設(shè)定路徑,命令別名,每次shell script的執(zhí)行都會使用它一次
rc.local、init.d、init 、rc.d
init 文件名,指的是系統(tǒng)啟動的第一個腳本
init.d 目錄名,目錄內(nèi)放的是各個服務(wù)的啟動腳本,比如sshd、httpd等
rcX.d 目錄名,后面的X代表著每個運行級別。目錄內(nèi)有每個服務(wù)在init.d內(nèi)啟動腳本的鏈接文件,根據(jù)鏈接文件的名字來的啟動狀態(tài)。K開頭表示不啟動服務(wù),S打頭表示啟動服務(wù),X取值0~6(rc.d,rc,rc0.d,rc6.d等等)
rc.local 鏈接文件,指到/etc/rc.d/rc.local。是系統(tǒng)初始化及服務(wù)均啟動完畢后,最后執(zhí)行的一個腳本,一些簡單的腳本可以放到其中
linux部分命令介紹
netstat
Netstat 命令用于顯示各種網(wǎng)絡(luò)相關(guān)信息,如網(wǎng)絡(luò)連接,路由表,接口狀態(tài) (Interface Statistics),masquerade 連接,多播成員 (Multicast Memberships) 等等。
常見參數(shù) -a (all)顯示所有選項,默認(rèn)不顯示LISTEN相關(guān) -t (tcp)僅顯示tcp相關(guān)選項 -u (udp)僅顯示udp相關(guān)選項 -n 拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化成數(shù)字。 -l 僅列出有在 Listen (監(jiān)聽) 的服務(wù)狀態(tài) -p 顯示建立相關(guān)鏈接的程序名 -r 顯示路由信息,路由表 -e 顯示擴(kuò)展信息,例如uid等 -s 按各個協(xié)議進(jìn)行統(tǒng)計 -c 每隔一個固定時間,執(zhí)行該netstat命令。 提示:LISTEN和LISTENING的狀態(tài)只有用-a或者-l才能看到
ll 命令
ll 命令列出的信息更加詳細(xì),有時間,是否可讀寫等信息 。
ll會列出該文件下的所有文件信息,包括隱藏的文件,而ls -l只列出顯式文件,說明這兩個命令還是不等同的!
ps命令
該命令用于將某個時間點的進(jìn)程運行情況選取下來并輸出,process之意,它的常用參數(shù)如下:
-A :所有的進(jìn)程均顯示出來 -a :不與terminal有關(guān)的所有進(jìn)程 -u :有效用戶的相關(guān)進(jìn)程 -x :一般與a參數(shù)一起使用,可列出較完整的信息 -l :較長,較詳細(xì)地將PID的信息列出
其實我們只要記住ps一般使用的命令參數(shù)搭配即可,它們并不多,如下:
ps aux # 查看系統(tǒng)所有的進(jìn)程數(shù)據(jù) ps ax # 查看不與terminal有關(guān)的所有進(jìn)程 ps -lA # 查看系統(tǒng)所有的進(jìn)程數(shù)據(jù) ps axjf # 查看連同一部分進(jìn)程樹狀態(tài)
kill命令
該命令用于向某個工作(%jobnumber)或者是某個PID(數(shù)字)傳送一個信號,它通常與ps和jobs命令一起使用,它的基本語法如下:
kill -signal PID
signal的常用參數(shù)如下:
注:最前面的數(shù)字為信號的代號,使用時可以用代號代替相應(yīng)的信號。
1:SIGHUP,啟動被終止的進(jìn)程 2:SIGINT,相當(dāng)于輸入ctrl+c,中斷一個程序的進(jìn)行 9:SIGKILL,強(qiáng)制中斷一個進(jìn)程的進(jìn)行 15:SIGTERM,以正常的結(jié)束進(jìn)程方式來終止進(jìn)程 17:SIGSTOP,相當(dāng)于輸入ctrl+z,暫停一個進(jìn)程的進(jìn)行
例如: 以正常的結(jié)束進(jìn)程方式來終于第一個后臺工作,可用jobs命令查看后臺中的第一個工作進(jìn)程
kill -SIGTERM %1
重新改動進(jìn)程ID為PID的進(jìn)程,PID可用ps命令通過管道命令加上grep命令進(jìn)行篩選獲得
kill -SIGHUP PID
wget
1、使用wget下載單個文件
wget http://downloads.mongodb.org/linux/mongodb-linux-x86_64-2.6.3.tgz
2、使用wget -O下載并以不同的文件名保存
wget -O haorooms.zip http://www.haorooms.com/download.php?id=1080
3、使用wget –limit -rate限速下載 當(dāng)你執(zhí)行wget的時候,它默認(rèn)會占用全部可能的寬帶下載。但是當(dāng)你準(zhǔn)備下載一個大文件,而你還需要下載其它文件時就有必要限速了。
wget –limit-rate=300k http://cn.wordpress.org/wordpress-3.1-zh_CN.zip
4、使用wget -c斷點續(xù)傳 使用wget -c重新啟動下載中斷的文件:
wget -c http://www.haorooms.com/haorooms-3.1-zh_CN.zip
對于我們下載大文件時突然由于網(wǎng)絡(luò)等原因中斷非常有幫助,我們可以繼續(xù)接著下載而不是重新下載一個文件。需要繼續(xù)中斷的下載時可以使用-c參數(shù)。
5、使用wget -b后臺下載 對于下載非常大的文件的時候,我們可以使用參數(shù)-b進(jìn)行后臺下載。
wget -b http://www.haorooms.com/haorooms-3.1-zh_CN.zip Continuing in background, pid 1840. Output will be written to `wget-log'.
你可以使用以下命令來察看下載進(jìn)度
tail -f wget-log
tail 命令
tail 命令從指定點開始將文件寫到標(biāo)準(zhǔn)輸出.使用tail命令的-f選項可以方便的查閱正在改變的日志文件,tail -f filename會把filename里最尾部的內(nèi)容顯示在屏幕上,并且不但刷新,使你看到最新的文件內(nèi)容.
1.命令格式;
tail[必要參數(shù)][選擇參數(shù)][文件]
2.命令功能:
用于顯示指定文件末尾內(nèi)容,不指定文件時,作為輸入信息進(jìn)行處理。常用查看日志文件。
3.命令參數(shù):
-f 循環(huán)讀取 -q 不顯示處理信息 -v 顯示詳細(xì)的處理信息 -c<數(shù)目> 顯示的字節(jié)數(shù) -n<行數(shù)> 顯示行數(shù) --pid=PID 與-f合用,表示在進(jìn)程ID,PID死掉之后結(jié)束. -q, --quiet, --silent 從不輸出給出文件名的首部 -s, --sleep-interval=S 與-f合用,表示在每次反復(fù)的間隔休眠S秒
下面的命令是顯示文件末尾5行
tail -n 5 log2014.log
curl命令
可以查看網(wǎng)站,也可以下載文件!
在Linux中curl是一個利用URL規(guī)則在命令行下工作的文件傳輸工具,可以說是一款很強(qiáng)大的http命令行工具。它支持文件的上傳和下載,是綜合傳輸工具,但按傳統(tǒng),習(xí)慣稱url為下載工具。
語法:
curl [option] [url]
常見參數(shù):
-A/--user-agent <string> 設(shè)置用戶代理發(fā)送給服務(wù)器 -b/--cookie <name=string/file> cookie字符串或文件讀取位置 -c/--cookie-jar <file> 操作結(jié)束后把cookie寫入到這個文件中 -C/--continue-at <offset> 斷點續(xù)轉(zhuǎn) -D/--dump-header <file> 把header信息寫入到該文件中 -e/--referer 來源網(wǎng)址 -f/--fail 連接失敗時不顯示http錯誤 -o/--output 把輸出寫到該文件中 -O/--remote-name 把輸出寫到該文件中,保留遠(yuǎn)程文件的文件名 -r/--range <range> 檢索來自HTTP/1.1或FTP服務(wù)器字節(jié)范圍 -s/--silent 靜音模式。不輸出任何東西 -T/--upload-file <file> 上傳文件 -u/--user <user[:password]> 設(shè)置服務(wù)器的用戶和密碼 -w/--write-out [format] 什么輸出完成后 -x/--proxy <host[:port]> 在給定的端口上使用HTTP代理 -#/--progress-bar 進(jìn)度條顯示當(dāng)前的傳送狀態(tài)
小結(jié)
關(guān)于環(huán)境變量與命令就介紹到這,其實linux命令還有很多,上面的命令是我經(jīng)常用到的,給有需要的朋友參考。
相關(guān)文章
FreeBSD6.1Release下利用BIND架設(shè)DNS服務(wù)器的方法
FreeBSD6.1Release下利用BIND架設(shè)DNS服務(wù)器的方法...2007-05-05Linux系統(tǒng)如何添加普通用戶到 sudoers 文件
這篇文章主要介紹了Linux系統(tǒng)添加普通用戶到 sudoers 文件的方法,在文章給大家補(bǔ)充Debian將普通用戶添加到sudoer文件的方法,感興趣的朋友一起看看吧2017-10-10