linux 常用知識點

2021-08-21 02:31:18 字數 4535 閱讀 4068

/etc/profile檔案中修改環境變數,在這裡修改的內容是對所有使用者起作用的。

以下主要操作將在該檔案中進行。

shrc檔案(在使用者的家目錄下)進行環境變數的編輯,只對當前使用者有用。使用修改/etc/profile 檔案進行環境變數的編輯,是對所有使用者有用。大家一定要注意區別。

在unix/xenix系統中有兩個對使用者而言必不可少的檔案——etc目錄下的profile檔案和

使用者主目錄($home)下的.profile檔案。前者是系統檔案,對系統下全體使用者起作用,後者是

使用者自己的"私人"檔案。

這兩個檔案的功能類似於dos系統下的autoexec.bat檔案,不同之處在於autoexec.bat文

件可以為空,而這兩個檔案內容不僅不能為空,而且必須存在。它們在使用者登入(login註冊)

時,被系統自動執行,為使用者設定工作環境,若使用得當,可發揮強大作用。

etc目錄下的profile檔案是每乙個使用者登入時,作業系統首先執行的檔案,然後再將控制

權交給使用者主目錄下的.profile檔案,當系統給出主提示符($ps1)後,使用者就可以開始自己的

工作了。以上全過程對使用者而言是透明的。

/etc/profile檔案的主要功能包括:顯示unix/xenix版本資訊或者系統專用應用程式的

提示資訊,設定掩碼(umask),對終端和郵箱(mail box)進行處理,對非root使用者禁止使用new

s命令等。

因為/etc/profile檔案的作用範圍是全體使用者,所以非共性的設定應放在使用者自己的.p

rofile檔案中。下面就詳細講述.profile檔案。

.profile是隱含檔案,普通的列目錄命令(l、ls、lf,ls-l等)顯示不出該檔案。unix/x

enix系統所有隱檔案前都有"."符。

顯示unix/xenix系統中的隱含檔案屬性用以下命令:

$l - a

原始的.profile檔案是系統管理員使用sysadmsh命令或mkdev user命令建立使用者時,系

統為該使用者自動生成的,使用者可使用vi編輯該檔案為自己所用。.profile檔案產生的效用直

至使用者退出系統後才消失,而當使用者重新登入時,又開始發揮作用。

設定終端型別

使用者使用unix/xenix系統時可能會遇到這樣乙個現象:每次登入後,系統會要求使用者敲入

終端型別,然後在使用者輸入相應資訊後,才給出提示符。這是為什麼呢?

原來在原始.profile檔案中有這樣乙個語句:

eval 『test -m ansi:ansi -m:$-r -s -q』

該語句的作用是要求使用者敲入所使用終端的型別並進行測試。

如果我們在.profile檔案中加入以下命令:

term=terminal-name

term變數指明終端型別。

如:term=vt100,並且注釋掉eval語句。這樣處理以後,使用者再註冊時,就無需敲入終端類

型了。定義path變數

該變數類似於dos系統的path變數,其格式如下:

path=$path:$home/bin:/usr/informix/bin:.

說明:1.該語句未尾的"·"表示當前路徑,不可缺少;

2.不同路徑間用":"隔開;

3.$path是系統中提供的預設變數,其初始值為/bin:/usr/bin;

4.路徑的順序是很重要的,前後次序不宜隨便顛倒。比如使用者自編了乙個與系統命

令同名的可執行檔案,並將其放在$home下,並且打算使用這個命令而不是系統提供的同

名命令,那麼path應設定為:

path=$home/bin:$path:/usr/informix/bin:.

因為,若不同路徑下有相同的命令或可執行檔案,則以第乙個路徑下的為準。這時,shel

l先搜尋$home/bin路徑,發現其下的這個可執行檔案,就為使用者呼叫,而不會再執行/bin或者

/usr/bin下的標準同名命令了。

設定提示符

使用者可以將ps1(主提示符)、ps2(輔助提示符)改為更受歡迎的形式。通常情況下,以超

級使用者登入時,主提示符為"#",其它使用者為"$",ps2一般為"<"。修改提示符的方法如下:

格式:ps1="$logname> "

說明:將主提示符由預設值改為使用者註冊名。

使用stty命令重設終端配置

1.對資料傳輸方式進行設定

如:對奇偶校驗位、波特率(bps)大小、停止位位數進行重新設定。

2.字元處理

例1:stty nl

系統只接受字元作為換行符。

例2:stty-nl

系統以(return)字元做為換行符。

例3:stty echo

置擊鍵後螢幕回顯。

例4:stty-echo

置擊鍵後,螢幕無顯示方式。

3.特殊鍵定義

例1:stty erase escape #置抹除鍵(erase)為escape鍵

重置抹除鍵鍵值,預設值為"#"。

例2:stty kill delete #置刪行符(kill)為delete鍵

重置刪行符,預設值為"@"。

例3:stty eof ctrl-d #置檔案結束符(eof)為ctr-d鍵

重置檔案結束符。

例4:stty intr ctrl-c #中斷鍵可中止系統中絕大多數前台程序,是很重要的終端引數

重置終端中斷鍵為ctrl-c鍵。

4.其它常用stty命令

例1:stty sane ctrl-j

若終端功能發生紊亂,可用該命令來重置終端設定,使之恢復其出廠引數。該命令以"ct

rl-j"作為行結束符,因為在終端引數紊亂的情況下,return鍵的功能很可能已經失效,而ctr

l-j命令是系統提供的強行回車鍵,在絕大多數情況下不會失效。

例2:stty -a

該命令可以顯示出終端的所有引數。

以上stty命令是unix系統提供的,可隨時使用,使用者可據自己的需要在.profile檔案中設 定。

使用者自定義shell變數

使用者自定義shell變數是很有用的,使用情況也很廣泛。其功能有些類似於c語言的巨集定

義(#define)。最常見的情況是將自己常去的而且很深的路徑自定義為乙個固定變數,放在.

profile檔案中。

如:ml=/usr/work/source/firstml/secoudml

這時,若使用者在主提示符($ps1)下鍵入:

$>cd $ml

$>pwd # 顯示當前路徑

螢幕顯示當前路徑為:/usr/work/source/firstml/secondml。

需注意的是:無論使用shell專用變數還是自定義變數,均需在變數(大寫拼寫)前加上"$

"符。並且,在定義完所有變數後,需在.profile中使用export語句,它的作用是將變數設定在

shell環境中,以在任意路徑下使用。

如:export shell ml term path mail ps1

使用shell內部命令

使用者可在.profile檔案內使用shell內部命令和作業系統命令,shell常用命令見下表。

@@28173000.gif;表1@@

.profile檔案在client/server結構中的應用

在client/server結構下,server總是時刻在執行的,不斷地接收cleint發來的請求,處理

完後向client發回某些資訊。我們指定由server使用者來啟動server守候程序,特別需要注意

的是,該程序的父程序需設為系統起始程序(init程序),脫離所屬終端。否則當server使用者從

該終端退出後,該程序就變成了無法控制的"殭屍"程序。

因此,在server使用者的.profile檔案中加上如下設定:

$home/bin/server >>/tmp/server.tmp 2> &1

說明:1."&"符號的作用是使系統將程序作為後台程序處理。

2."2"的作用。

shell在執行乙個unix命令時,自動開啟三個檔案:stdin(標準輸入)、stdout(標準輸出

)、stderr(標準錯誤),檔案描述字分別是0、1、2。所以,上面語句中的"2"表示標準錯誤的

檔案描述字。將server程序的錯誤資訊重定向到/tmp/sever.tmp檔案中,而不是stdout上,這

樣處理後既不會干擾前台工作,而且使用者可隨時瀏覽/tmp/server.tmp檔案及時發現錯誤,便

於程式除錯,一舉兩得。對於後台程序,一般都要將其結果重定向到某固定檔案中。

3.由於unix系統是多使用者、多工、分時處理系統,所以不排除許多使用者以server使用者

註冊,因此其.profile檔案會被執行許多次,因之server程序也會被啟動許多次,這種情況是

有害的,所以我們作以下修改:

if ps -ef| grep "server" >/dev/null

then echo"server already running……"

else

echo "server is running..."

$home/bin/server >> /tmp/server.tmp 2>&1

sleep 5 fi

linux 常用知識點

檢視硬碟 已分割槽的磁碟 df h 檢視所有磁碟 fdisk l 分割槽磁碟 fdisk dev sdb m 檢視幫助 n 新增乙個新建分割槽 p 建立主分割槽 1 分割槽號1 4 1 起始磁柱 回車 預設結束磁柱 格式化 mkfs t ext4 dev sdb1 掛載 臨時 mkdir newdi...

LINUX常用知識點(1)

u g o 使用者 組內使用者 其他使用者 檔案許可權 r 讀 4 w 寫 2 x 可執行 1 組外成員o的許可權為唯讀 r 4 所有者a全部許可權 rwx 7 組內g的許可權讀與寫 rw 6 route route命令是在本地ip路由器中顯示和修改條目網路命令,修改路由的命令 tracert tr...

mysql常用知識點 mysql 常用知識點。

mysql u root p show databases show tables select from abc order by id limit 0,10 create database bbb exit mysqldump u root p game home backup.sql mysq...