完美介紹linux環(huán)境變量與部分命令
linux環(huán)境變量介紹
環(huán)境變量:bash shell用一個(gè)稱作“環(huán)境變量(environment variables)”的特性來存儲(chǔ)有關(guān)shell會(huì)話和工作環(huán)境的信息,它允許你在內(nèi)存中存儲(chǔ)數(shù)據(jù),以便運(yùn)行在shell上的程序和腳本訪問,這些數(shù)據(jù)可以用來識(shí)別用戶、賬戶、系統(tǒng)、shell特性以及任何其他你需要存儲(chǔ)的數(shù)據(jù)。
shell中的環(huán)境變量有全局環(huán)境變量和局部環(huán)境變量,通過KV(variable=value)的形式聲明一個(gè)局部變量,export這個(gè)局部變量,則升級(jí)成為全局環(huán)境變量。
關(guān)于linux的設(shè)置,有很多方法,可能大家會(huì)有所混淆。例如:
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)的每個(gè)用戶設(shè)置環(huán)境信息,當(dāng)用戶第一次登錄時(shí),該文件被執(zhí)行并從/etc/profile.d目錄的配置文件中搜集shell的設(shè)置。
/etc/bashrc:為每一個(gè)運(yùn)行bash shell的用戶執(zhí)行此文件.當(dāng)bash shell被打開時(shí),該文件被讀取。
~/.bash_profile:每個(gè)用戶都可使用該文件輸入專用于自己使用的shell信息,當(dāng)用戶登錄時(shí),該文件僅僅執(zhí)行一次!默認(rèn)情況下,他設(shè)置一些環(huán)境變量,執(zhí)行用戶的.bashrc文件。
~/.bashrc:該文件包含專用于你的bash shell的bash信息,當(dāng)?shù)卿洉r(shí)以及每次打開新的shell時(shí),該 該文件被讀取。
區(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ù)不同使用者帳號(hào),去其他目錄讀取~/.bash_profile,如果這讀取不了就讀取~/.bash_login,這個(gè)也讀取不了才會(huì)讀取 ~/.profile,這三個(gè)文檔設(shè)定基本上是一樣的,讀取有優(yōu)先關(guān)系
三、最后再根據(jù)用戶帳號(hào)讀取~/.bashrc
~/.profile與~/.bashrc相同點(diǎn):
都具有個(gè)性化定制功能 ~/.profile可以設(shè)定本用戶專有的路徑,環(huán)境變量,等,它只能登入的時(shí)候執(zhí)行一次 ~/.bashrc也是某用戶專有設(shè)定文檔,可以設(shè)定路徑,命令別名,每次shell script的執(zhí)行都會(huì)使用它一次
rc.local、init.d、init 、rc.d
init 文件名,指的是系統(tǒng)啟動(dòng)的第一個(gè)腳本
init.d 目錄名,目錄內(nèi)放的是各個(gè)服務(wù)的啟動(dòng)腳本,比如sshd、httpd等
rcX.d 目錄名,后面的X代表著每個(gè)運(yùn)行級(jí)別。目錄內(nèi)有每個(gè)服務(wù)在init.d內(nèi)啟動(dòng)腳本的鏈接文件,根據(jù)鏈接文件的名字來的啟動(dòng)狀態(tài)。K開頭表示不啟動(dòng)服務(wù),S打頭表示啟動(dòng)服務(wù),X取值0~6(rc.d,rc,rc0.d,rc6.d等等)
rc.local 鏈接文件,指到/etc/rc.d/rc.local。是系統(tǒng)初始化及服務(wù)均啟動(dòng)完畢后,最后執(zhí)行的一個(gè)腳本,一些簡單的腳本可以放到其中
linux部分命令介紹
netstat
Netstat 命令用于顯示各種網(wǎng)絡(luò)相關(guān)信息,如網(wǎng)絡(luò)連接,路由表,接口狀態(tài) (Interface Statistics),masquerade 連接,多播成員 (Multicast Memberships) 等等。
常見參數(shù) -a (all)顯示所有選項(xiàng),默認(rèn)不顯示LISTEN相關(guān) -t (tcp)僅顯示tcp相關(guān)選項(xiàng) -u (udp)僅顯示udp相關(guān)選項(xiàng) -n 拒絕顯示別名,能顯示數(shù)字的全部轉(zhuǎn)化成數(shù)字。 -l 僅列出有在 Listen (監(jiān)聽) 的服務(wù)狀態(tài) -p 顯示建立相關(guān)鏈接的程序名 -r 顯示路由信息,路由表 -e 顯示擴(kuò)展信息,例如uid等 -s 按各個(gè)協(xié)議進(jìn)行統(tǒng)計(jì) -c 每隔一個(gè)固定時(shí)間,執(zhí)行該netstat命令。 提示:LISTEN和LISTENING的狀態(tài)只有用-a或者-l才能看到
ll 命令
ll 命令列出的信息更加詳細(xì),有時(shí)間,是否可讀寫等信息 。
ll會(huì)列出該文件下的所有文件信息,包括隱藏的文件,而ls -l只列出顯式文件,說明這兩個(gè)命令還是不等同的!
ps命令
該命令用于將某個(gè)時(shí)間點(diǎn)的進(jìn)程運(yùn)行情況選取下來并輸出,process之意,它的常用參數(shù)如下:
-A :所有的進(jìn)程均顯示出來 -a :不與terminal有關(guān)的所有進(jìn)程 -u :有效用戶的相關(guān)進(jìn)程 -x :一般與a參數(shù)一起使用,可列出較完整的信息 -l :較長,較詳細(xì)地將PID的信息列出
其實(shí)我們只要記住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命令
該命令用于向某個(gè)工作(%jobnumber)或者是某個(gè)PID(數(shù)字)傳送一個(gè)信號(hào),它通常與ps和jobs命令一起使用,它的基本語法如下:
kill -signal PID
signal的常用參數(shù)如下:
注:最前面的數(shù)字為信號(hào)的代號(hào),使用時(shí)可以用代號(hào)代替相應(yīng)的信號(hào)。
1:SIGHUP,啟動(dòng)被終止的進(jìn)程 2:SIGINT,相當(dāng)于輸入ctrl+c,中斷一個(gè)程序的進(jìn)行 9:SIGKILL,強(qiáng)制中斷一個(gè)進(jìn)程的進(jìn)行 15:SIGTERM,以正常的結(jié)束進(jìn)程方式來終止進(jìn)程 17:SIGSTOP,相當(dāng)于輸入ctrl+z,暫停一個(gè)進(jìn)程的進(jìn)行
例如: 以正常的結(jié)束進(jìn)程方式來終于第一個(gè)后臺(tái)工作,可用jobs命令查看后臺(tái)中的第一個(gè)工作進(jìn)程
kill -SIGTERM %1
重新改動(dòng)進(jìn)程ID為PID的進(jìn)程,PID可用ps命令通過管道命令加上grep命令進(jìn)行篩選獲得
kill -SIGHUP PID
wget
1、使用wget下載單個(gè)文件
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的時(shí)候,它默認(rèn)會(huì)占用全部可能的寬帶下載。但是當(dāng)你準(zhǔn)備下載一個(gè)大文件,而你還需要下載其它文件時(shí)就有必要限速了。
wget –limit-rate=300k http://cn.wordpress.org/wordpress-3.1-zh_CN.zip
4、使用wget -c斷點(diǎn)續(xù)傳 使用wget -c重新啟動(dòng)下載中斷的文件:
wget -c http://www.haorooms.com/haorooms-3.1-zh_CN.zip
對于我們下載大文件時(shí)突然由于網(wǎng)絡(luò)等原因中斷非常有幫助,我們可以繼續(xù)接著下載而不是重新下載一個(gè)文件。需要繼續(xù)中斷的下載時(shí)可以使用-c參數(shù)。
5、使用wget -b后臺(tái)下載 對于下載非常大的文件的時(shí)候,我們可以使用參數(shù)-b進(jìn)行后臺(tái)下載。
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 命令從指定點(diǎn)開始將文件寫到標(biāo)準(zhǔn)輸出.使用tail命令的-f選項(xiàng)可以方便的查閱正在改變的日志文件,tail -f filename會(huì)把filename里最尾部的內(nèi)容顯示在屏幕上,并且不但刷新,使你看到最新的文件內(nèi)容.
1.命令格式;
tail[必要參數(shù)][選擇參數(shù)][文件]
2.命令功能:
用于顯示指定文件末尾內(nèi)容,不指定文件時(shí),作為輸入信息進(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是一個(gè)利用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寫入到這個(gè)文件中 -C/--continue-at <offset> 斷點(diǎn)續(xù)轉(zhuǎn) -D/--dump-header <file> 把header信息寫入到該文件中 -e/--referer 來源網(wǎng)址 -f/--fail 連接失敗時(shí)不顯示http錯(cuò)誤 -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)境變量與命令就介紹到這,其實(shí)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