天天看點

Linux基礎知識題解答(六)

(1)怎樣檢視檔案或目錄的屬性,給出指令。

ls -l 或者 ll

(2)描述硬連結和軟連結的差別

1.硬連結原檔案/連結檔案共用一個inode号,說明他們是同一個檔案,而軟連結原檔案/連結檔案擁有不同的inode号,表明他們是兩個不同的檔案;

2.在檔案屬性上軟連結明确寫出了是連結檔案,而硬連結沒有寫出來,因為在本質上硬連結檔案和原檔案是完全平等關系;

3.連結數目是不一樣的,軟連結的連結數目不會增加;

4.檔案大小是不一樣的,硬連結檔案顯示的大小是跟原檔案是一樣的,而軟連結顯示的大小與原檔案就不同了。

5.不允許給目錄建立硬連結,不可以在不同檔案系統的檔案間建立硬連結。軟連結則沒有任何檔案系統的限制,任何使用者可以建立指向目錄的符号連結

6.若原檔案删除了,則該軟連接配接則不可以通路,而硬連接配接則是可以的。

(3)描述出一個檔案屬性中各個權限位所對應的使用者

前三位對應檔案所屬使用者,中間三位對應檔案所屬組的其他使用者,後三位對應其他使用者

(4)說出rwx-,分别代表什麼意思。

r可讀,w可寫,x可運作,-表示無

(5)Inode大小和總量的檢視

檢視Inode總量:df -i 或者 dumpe2fs /dev/sda1 | grep "Inode count"

檢視Inode大小:dumpe2fs /dev/sda1 | grep "Inode size"

(6)一個檔案建立後至少要占用( inode )和( block )

(7)使用者的角色是通過(uid)和(gid)來識别的

(8)檔案類型有哪幾種,分别描述出來

普通檔案,目錄,塊裝置,字元裝置,FIFO檔案,符号連結檔案,socket檔案

通過stat -c %F 或者file 後接檔案名  可以檢視檔案的類型

(9)建立硬連結的指令和建立軟連結的指令:

建立硬連結:ln

建立軟連結:ln -s

(10)描述檔案删除的原理

linux是通過link的數量來控制檔案删除的,一般來說,每個檔案都有兩個link計數器:i_count和i_link,i_link是檔案的硬連結數(磁盤引用計數器),i_count是檔案被程序所調用的數(記憶體引用計數器),隻有當i_count和i_link都為0了,檔案才會被真正的删除;rm指令,删除的是檔案的i_link數,實際就是将檔案名到inode的連結删除了(當i_link即硬連結數等于0時,inode會被系統回收),此時,并沒有删除檔案的實體即block資料塊,如果及時停止機器工作,資料是可以找回的,如果此時繼續寫入資料,那麼新資料就有可能會被配置設定到被删除資料的block資料塊,此時,檔案就會被真正的回收了。

(11)用sed指令結合正規表達式取ip位址。

ifconfig eth0 | sed -rn 's/^.*dr:(.*)  B.*$/\1/p'

(12)用grep指令過濾掉空行的方法?

grep -v  "^$"

(13)使/etc/passwd中的使用者資訊的第一列和最後一列調換位置(sed指令結合正規表達式作答)

sed -rn 's/(.*):(.*):(.*):(.*):(.*):(.*):(.*)/\7:\2:\3:\4:\5:\6:\1/p'  /etc/passwd

awk法:awk 'BEGIN{OFS=FS=":"}{tmp=$1;$1=$NF;$NF=tmp;print $0}' /etc/passwd

(14)Oldboy檔案中内容為

11

101

1001

10001

請用正規表達式的知識過濾出

至少用兩種方法。

grep "10\{1,\}1" oldboy.log

egrep "10+1" oldboy.log

(15)用擴充正規表達式的知識過濾題4中的oldboy檔案,過濾出

egrep -v "10{1,}1" oldboy.log

(16)用正規表達式的知識過濾題4中的oldboy檔案,過濾出

grep "10\?1" oldboy.log

(17)用擴充正規表達式的知識過濾題4中的oldboy檔案,過濾出

egrep "10{3}1" oldboy.log

(18)用正規表達式的知識取出下面輸出中的644

[root@linuxdata]# stat /etc/hosts

  File: `/etc/hosts'

  Size: 158             Blocks: 8          IO Block: 4096   regular file

Device:803h/2051d      Inode: 129822      Links: 2

Access:(0644/-rw-r--r--)  Uid: (    0/   root)   Gid: (    0/   root)

Access:2015-11-01 16:02:01.144612271 +0800

Modify:2010-01-12 21:28:22.000000000 +0800

Change:2015-09-24 17:07:48.177129310 +0800

stat /etc/hosts | awk -F "/" 'NR==4 {print $1}' | awk -F "0" '{print $2}'

(19)基礎正規表達式都有哪些?

^word    比對以word開頭的字元串

word$    比對以word結尾的字元串

.        任意一個字元

\        轉義符号

*        重複前面的字元0次或多次

.*       比對任意字元

[]       字元集合,比對所包含的任意一個字元

[^word]  比對不包含word的字元

\{n,m\}  比對前面的字元n次到m次

\{n,\}   比對前面的字元至少n次

\{n\}    比對前面的字元n次

(20)擴充正規表達式都有哪些?

+     比對前面的字元1次或多次

?     比對前面的字元0次或1次

|     用或的方式比對多個字元串

()    組比對,比對括号内為一組的字元串

本文轉自 kuSorZ 51CTO部落格,原文連結:http://blog.51cto.com/kusorz/1748303

繼續閱讀