查閱一個文件的內容可使用指令cat/tac/nl。less
# [cat|tac|nl] 文件
區別:
1.cat是直接把文件內容輸出到屏幕上,而且從第一行開始輸出到末行
2.tal和cat相同,只不過tal是從末行反過來開始輸出到第一行
3.nl則是能夠添加行號打印,第一行能夠顯示1/01/001...
ui
morevagrant
空格鍵 :翻下一頁
enter : 翻下一行
/字符串 :向下查找該字符串
:f :顯示出文件名和目前顯示行數
q :離開
b : 往回翻頁code
lessci
空格鍵|[pagedown] :翻下一頁
[pageup]: 翻上一頁
/字符串 :向下查找該字符串
?字符串 :向上查找該字符串
q :離開
g : 跳轉到第一行
G : 跳轉到末行
rem
當文件過大,內容過多時,咱們能夠抽取其中某幾行來查看。
head(取出前面幾行)字符串
# head [-n number] 文件
-n : 表明的從頭開始顯示幾行。因此number咱們寫的是數字,若是要顯示前面5行,那麼就是博客
head -n 5 file
tail(取出後面幾行)it
tail [-n number] 文件
number和上述同樣。
可是若是隻查看第11-20行呢?咱們就能夠先取前20行,而後再取後面十行。那麼就要用到管道啦。複習一下,管道的線是這個符號 " | ",簡稱管線。(瞎扯╭(╯^╰)╮)io
head -n 20 文件 | tail -n 20
若是咱們須要查看非文本的文件,例如如何查看/usr/bin/passwd這個執行文件內容時。因爲執行文件一般是binary file(二進制文件),若是咱們使用上面的那些命令查看,就會出現亂碼的狀況。而查看這些文件咱們可使用od這個指令。
od [-t TYPE] 文件 TYPE: a:使用默認的字符來輸出 c:使用ASCII字符來輸出 d[size]: (decimal)使用十進制來輸出,每一個整數佔用 size bytes; f[size]: (floating)使用浮點數來輸出,每一個整數佔用 size bytes; o[size]: (octal)使用八進制來輸出,每一個整數佔用 size bytes; x[size]: (hexadecimal)使用十六進制來輸出,每一個整數佔用 size bytes;
當咱們創建文件或者目錄時,那麼他的權限是多少呢?這個就要使用umask這個指令了,使用方式以下:
#umask //查看當前默認的權限值 0002
chattr(配置文件隱藏屬性)
除了rwx的那9個權限外,還有隱藏屬性(真是難受),該指令只在Ext2/Ext3/Ext4 的Linux文件系統生效,其餘的文件系統可能沒法徹底支持該指令(如今都9102年了,不知道徹底支持不呢...)
# chattr [+-=] [options] 文件或目錄 選項: + : 增長某一個參數 - : 移除某一個參數 = : 從新設置參數。 參數(options) a : 該文件只能增長數據,不能刪除數據,也不能修改數據,只有root用戶能設定該參數。 i : 該文件不能刪除、更名、設定連結,還沒法寫入或新增數據!只有root用戶能設定該參數。 ... eg: # sudo chattr +a file1 //把file1文件設置隱藏屬性i # rm -f test rm: cannot remove 'test': Operation not permitted //提示不能執行該操做哦,由於設置了隱藏屬性i,是不能刪除該文件的。
lsattr(顯示文件隱藏屬性)
使用chattr設置了隱藏屬性後,就可使用lsattr查看啦
# lsattr [-adR] 文件或目錄 a : 查看隱藏文件屬性 d : 若是是目錄,僅列出目錄自己的屬性、而非目錄內的文件屬性 R : 連同子目錄也一併列出
其實除了rwx的文件權限外,還有特殊權限s和t,s和t的做用分別放到第十三章和第十六章說明(按照我這個寫博客的進度不知道要等到猴年馬月,有想了解的童靴就去搜搜)。
當s這個標誌出如今文件擁有者的x權限上時,例如 [-rwsr-xr-x],此時就被稱爲Set UID,簡稱SUID特殊權限,SUID的特殊功能以下:
SUID權限僅對二進制程序有效
執行者對改程序須要具備x的執行權限
本權限僅在執行該程序的過程當中有效
執行者將具備該程序擁有者的權限
當s標誌在所屬組的x標誌上,例如 [-rwx--s--x],此時成爲Set GID,簡稱SGID。對於文件有如下功能:
SGID對二進制程序有用
執行者須要具有相應的x權限
執行該程序的用戶則會得到該程序羣組的支持
對於目錄有如下功能
用戶若對目錄有r和x權限,則能進入該目錄
用戶在此目錄下的有效羣組將會變成該目錄的羣組(有效羣組是用戶建立文件的時候,文件默認所屬的羣組)
用途:若用戶具備w權限,則用戶所創建的新文件的羣組則與該目錄的羣組相同。
簡稱SBIT,只對目錄有效:
用戶對於此目錄具備w,x權限
用戶在此目錄下創建文件,只有本身和root用戶有權限刪除文件。
SUID/SGID/SBIT 權限設定
4 爲 SUID
2 爲 SGID
1 爲 SBIT
第五章講過了修改權限的命令,至於添加特殊權限則以下操做:
chmod 4755 filename //這裏的4爲SUID的特殊權限 後面的755就和之前的同樣
若是須要知道某個文件是屬於什麼類型,例如是屬於ASCII、binary仍是其它的文件。就是用這個類型
$ file test_file test_file: ASCII text //返回ASCII 的純文本文件
$ which [-a] command -a : 將全部PATH目錄中能夠知道的指令列出 例如: $ which service /usr/sbin/service
格式: find [PATH] [option] $ find /home mtime 0 //查看home目錄下24小時以內被修改的文件 $ find /home -user vagrant //查詢home目錄下用戶爲vagrant的目錄或文件 /home/vagrant /home/vagrant/.cache ... $ find /home -name test_file //查詢home目錄下名爲test_file的文件 /home/vagrant/test_file
看了鳥哥的Linux的第六章後,我差很少把文章講到的命令有寫上了,不過比較詳細的東西可能並無在文章這裏寫到,並且我我的以爲寫這篇文章消耗我比較長的時間, 最大的緣由是無論什麼命令都寫上去,反正書裏說到的就寫。後面越寫我就愈加現,文章不能照搬書裏的內容,應該把比較經常使用的內容寫到上面才比較合適。 否則的話還不如看我文章的小夥伴看書去比較好,因此我日後的文章可能會盡量的寫現實當中比較經常使用的東西(我本身以爲經常使用的東西,可能不是真的經常使用)。 好了,文章畢竟寫得多才會有積累,寫得會更快,可是更快的狀況下我會盡量的保證內容的正確性。 文章如有不足之處,請在評論區留言指出或郵件發送到15915126689@163.com,謝謝你們。