天天看點

網際網路技術24——linux基礎知識

一、Linux 檔案

網際網路技術24——linux基礎知識

根據上文Linux 檔案說明

1.檔案的rwx

    d開頭表示檔案夾,

    -開頭的表示檔案,

    l開頭表示連結檔案

    r:read,w:write,x:execute

    三部分分别表示 

        檔案所有者的權限、所屬組的權限、其他人的權限

2.連結數

3.所有者

4.所屬組

5.檔案大小

6.檔案的建立或修改時間

7.檔案的名稱

二、檔案處理指令

指令:touch

文法:touch[檔案名]

描述:建立一個空檔案

指令:mkdir

文法:mkdir [-p] [檔案夾名稱]

描述:[遞歸]建立檔案夾

指令:cp(copy)

文法:cp [源檔案][目标檔案]

      cp -r [源目錄][目标目錄]

描述:複制檔案或目錄

指令:rm(remove)

文法:rm -f [檔案]

      rm -r [目錄]

      rm -rf [目錄,包含目錄下的内容]

描述:删除檔案或目錄

指令:cat

文法:cat [檔案名稱]

描述:檢視檔案内容(内容過多,顯示内容可能不全)

指令:more

文法:more [檔案名稱]

描述:檢視檔案内容,可完全顯示

用法:使用空格進行法爺,回車顯示下一行,q退出(或者ctrl+c)

指令:head

文法:head -number [檔案名]

描述:檢視檔案的前多少行

指令:tail

文法:tail -number [檔案名]

描述:檢視檔案的後多少行

mv 1 修改檔案名稱的功能:mv [源檔案名][新檔案名]

   2 移動檔案位置:mv [源檔案名稱][新檔案位置+新檔案名稱]

指令:ln(link)

文法:ln -s [源檔案][目标檔案](硬連接配接則不需要加-s選項)

描述:建立軟連接配接檔案

軟連接配接的特點:權限是所有人都可以通路,并且軟連接配接指向源檔案,就類型win的快捷方式

硬連結的特點:cp源檔案,兩個檔案是同步修改的

另外:硬連結是不可以跨檔案系統分區的,而軟連接配接可以。

指令:chmod

文法:chmod[{ugo}{+-=}{rwx}][檔案或目錄]

      chmod[mode=421][檔案或目錄]

      421分别表示rwx,4+2+1 = 7

描述:改變檔案或目錄的權限

形如:chmod g+w filename

形如:chmod 761 filename

問題示例:建立一個目錄,下面一個檔案,用普通使用者删除檔案

嘗試:在root下将檔案的權限設定成777然後用普通使用者删除檔案

嘗試:在root下将檔案夾的權限設定成777然後用普通使用者删除檔案

結論:檔案夾的寫權限表示能否删除檔案夾下的檔案

      檔案的寫權限表示能否編輯檔案,不代表能否删除檔案

檔案的rwx權限

    r:可執行catch、more等讀操作

    w:修改檔案的内容等寫操作,單不代表可以把這個檔案删除

    x:對檔案進行執行操作

檔案夾的rwx權限

    r:刻度操作,可以列出目錄的内容,比如ls指令。

    w:表示可以在目錄下建立或者删除檔案的權限

    x:表示可以進入這個目錄(基本上所有目錄都會有rx權限)

root使用者切換到普通使用者是不需要輸入密碼的

普通使用者切換到root要密碼

普通使用者之間切換要密碼

指令:chown

文法:chown user 檔案

描述:改變檔案的所有者

執行個體:chown newuser t1.sh

      useradd username 添加使用者

      passwd username 為使用者設定密碼

指令:chgrp

文法:chgrp group 檔案

描述:改變檔案的所屬組

示例:chgrp adm t1.sh

    檢視系統預設的權限:umask -S(umask檢視權限掩碼值022 使用777-022得到真實權限

指令:find

文法:find[搜尋方位路徑] [檔案名] (根據檔案名查找)

      find[搜尋範圍路徑] -size [+-檔案大小] (根據檔案大小查找,大于+小于-)

      find[搜尋範圍路徑] -user (檔案所有者)

            [以天為機關] 1 ctime、atime、mtime

            [以分鐘為機關] 2 cmin、amin、mmin

            c:表示檔案屬性發生變更

            a:表示被通路過(比如被檢視過)

            m:表示内容被修改過

            如 find /usr -ctime -1 表示24小時以内檔案屬性發生變化

描述:查找任何檔案或者目錄

* 比對任意字元

?比對一個字元

1k = 2block

find應用的邏輯連接配接

-a(and的意思,邏輯與)

-o(or的意思,邏輯或)

示例:find -size +12345 -a -size -22345

find查找:根據檔案類型查找

-type 

f表示二進制檔案,l表示軟連接配接檔案d表示目錄

示例:find /test -type d

指令:which

文法:which [指令名稱]

描述:檢視指令所在目錄位置

在linux中一般隻有兩種指令,一是所有使用者都可使用,二則是指允許管理者使用,還有whereis和which類似

示例:which rm

alias别名的意思,\rm就能使用源指令,而不是别名,也就是不詢問直接删除

對找到的檔案執行某個指令:find /test -name a.txt -exec rm -f {} \;

{}表示查詢到的結果集(-exec換成-ok也可以)

find -inum [i節點号] 根據i節點查找檔案,在linux系統中,所有的檔案都有一個唯一的辨別,友善linux核心去調用,這就是i節點

指令:locate

文法:locate [檔案名]

描述:查找檔案,根據linux資料庫内部的索引(updatedb指令,可以手工更新updatedb資料庫,一般和locate配合使用)

注意:locate的查找速度非常快,比find查找快得很多,原因是locate找的是linux系統建構的檔案資料庫的索引值,是以速度非常快,但是有的時候新建立的檔案使用locate指令差查不到,原因是這個檔案索引沒有馬上更新到linux系統檔案資料庫裡。

幫助手冊指令

指令:man

文法:man [指令或者配置檔案]

描述:幫助指令,非常有用,可以獲得指令的幫助文檔,如何使用等。

指令:whatis

文法:whatis [指令]

描述:檢視指令的描述

指令:--help

文法:[指令]  --help

描述:檢視指令的選項用法

壓縮解壓縮指令

指令:zip

文法:zip 選項[-r][壓縮後的檔案名稱][源檔案]

描述:zip格式是window和linux通用的格式,可以壓縮檔案和目錄,壓縮目錄是需要選項 -r

指令:unzip

文法:unzip [解壓縮的檔案]

描述:進行解壓縮

最後配置加-d 表示檔案加壓後存放的路徑

指令:tar [zcvf|zxvf] [打封包件名.tar.gz] [源檔案]

      -c 産生tar打封包件(必選)

      -x 嘗試的解壓縮檔案 (必選)

      -v 顯示詳細資訊

      -f 指定壓縮後的檔案名

      -z 打包同時壓縮

描述:打包目錄生成的字尾名.tar.gz,或者進行解壓最後配置加-C表示檔案解壓後配置的路徑

file指令可以檢視任何檔案的類型

關機:shutdown -h now

重新開機:reboot

ctrl+l 清屏

ctrl+c 退出應用

過濾:grep,可以對指定内容進行過濾然後輸出

管道:将一個指令的輸出傳送給另一個指令,作為另外一個指令的輸入,管道可以連接配接N個指令

ls -l /etc|more (表示将ls -l/etc的輸出單做more指令的資料,即more指令浏覽的内容是前面指令的輸出結果)

ls -l /etc|grep init(表示将ls -l /etc 的輸出結果進行過濾,顯示為init的結果)

ls -1 /etc|grep init|wc -l(最後進行統計顯示的個數)

邏輯與(&&)

    形如:ls&&pwd(第一個指令執行成功,第二個指令才會執行)

邏輯或(||)

    形如 ls || pwd (第一個指令執行成功則第二個不執行;第一個執行失敗則執行第二個)

輸出重定向

shell對每個程序預定義3個檔案描述字(0,1,2)

0(stdin)标準輸入 1(stdout)标準輸出 2(stderr)标準錯誤輸出

輸出重定向:就是把輸出的結果顯示到一個檔案上(>表示輸出重定向,>> 表示追加内容)

ls -l /etc > /usr/a.log 覆寫

ls -l /etc >> /usr/a.log 追加

輸入重定向:就是把輸入的資訊重定向,比如吧檔案裡的内容進行輸出

wall < /test/a.log

錯誤重定向:一般是把程式執行的錯誤日志資訊放到指定的log檔案中

ll /adasdfdsf 2> /test/b.log 

繼續閱讀