1. 程式人生 > >Linux基礎學習——檔案基礎

Linux基礎學習——檔案基礎

Linux基礎學習

其實針對linux的學習一直都沒有系統化,之前在學校接觸的都是微軟的一套體系,針對後端的伺服器的學習一直沒有進行補充,在2018年年底打算完成linux的基礎學習,參考資料依舊是用名氣較大的鳥哥的linux私房菜這本書

亂七八糟的前言

鳥哥的linux私房菜這本書中,前一部分其實就是對計算機組成原理的一個概述,沒有什麼實質的東西,從第四章開始才算是真正的正文。這裡就從第四章開始

指令入門

linux命令的基本形式:command  [-options] parameter1 parameter2

command為指令的名稱,options為選項,parameter為命令的引數,引數可以為多個

基礎命令的操作

顯示日期指令 date

直接輸入date,會按系統直接顯示日期

加入一些引數,會顯示不同的日期格式,具體的引數怎麼查詢,下文再詳細記錄

顯示日曆指令 cal

直接輸入cal即可以顯示當前日曆資料

輸入 cal [年份] 顯示指定年份的日曆

當然還幾個引數 cal [月份] [年份] 直接顯示指定年份和月份的日曆

簡單好用的計算器 bc

這個就太簡單了,直接上圖吧

scale=3,只是的是小數點後面的三位,指定了這個,1/5才顯示.200如果沒有指定,則直接顯示0

一些簡單的快捷鍵

ctrl+d相當於輸入exit,至於ctrl+c與tab鍵,這個就太簡單了,不做解釋

shfit+pageUp/pageDown 向上/向下翻頁

求助指令

1、查指令

輸入指令的前幾個字母,然後按兩次tab鍵,即可列出所有的該字母開頭的指令

2、查詢指令引數

command --help 可列出所有指令的引數和用法

man 指令能線上查詢指令說明

超簡單文字編輯器指令nano

這個是linux下比較簡單的文字編輯器,linux下的vi和vim更為常用,這個命令不需要學習太多

Linux的檔案許可權與目錄配置

使用者與群組

1、檔案擁有者

Linux是個多人多工的作業系統,因此檔案區分擁有者是很有必要的,這點和Windows的差別不大

2、群組概念

一個群組包含多個使用者,可以設定檔案許可權以群組為單位隔離,同時群組下的使用者也可以設定私密檔案。

3、其他人的概念

其實就是另一個群組

Linux裡面任何一個檔案都具有 user,group和others三種身份的個別許可權。

使用者與群組相關的檔案記錄位置

所有linux上的賬號與一般身份使用者,還有那個root的相關資訊,都記錄在/etc/passwd這個檔案內。至於個人的密碼則是記錄在/etc/shadow這個檔案下。所有的組名都是記錄在/etc/group下

Linux檔案許可權

這個圖直接擷取至鳥哥的linux私房菜一書,一些ll,ls的命令這裡只介紹不清楚的地方。這裡重點介紹許可權部分

這是一個十個字元組成的檔案許可權識別符號

第一個字元標明該檔案的檔案型別(好吧,之前沒注意這個字元),具體含義如下表

字元 含義
d 目錄
- 檔案
l 連結檔案(類似window下的快捷方式)
b 裝置檔案裡面的可供儲存的介面裝置
c 轉置檔案裡面的串列埠裝置

接下來的九個字元三個為一組,為[rwx]三個引數的組合,如果沒有指定的許可權,該位上會被標記為[-],r代表read——可讀,w代表write——可寫,x代表execute——可執行。

表示含義
第一組 檔案擁有者具有的許可權
第二組 加入該檔案群組賬號所具有的許可權
第三組 其他人(others)所具有的賬號許可權

例項:某檔案的許可權識別符號如下:[l][rwx][r-x][r--],則表示其為一個連結檔案,第一組表示檔案擁有者有可讀寫和可執行的許可權,第二組表示同群組使用者有可讀和可執行的許可權,第三組表示其他使用者只有可讀許可權。

檔案表示的第二部分其實指的是i-node的個數,這個後面再詳談

第三部分表示這個檔案的所有者,第四部分表示這個檔案的所屬組群,第五部分表示這個檔案的大小,第六部分表示這個檔案的最新修改日期。

例項:

從上述表示資訊中可讀出,該檔案為一個目錄,檔案所有者為root,且root對該問資料夾擁有可讀寫和可執行的許可權,資料夾所屬的組群也為root,且該組群對該資料夾有可讀和可執行的許可權,其他組群對該資料夾只有可執行的許可權,同時該資料夾有兩個i-node,資料夾大小為225位元組,資料夾最新修改日期是9月21號的22:50分。

修改檔案的許可權和屬性

chgrp:改變檔案所屬組群(change group)

chown:改變檔案擁有者(change owner)

chmod:改變檔案的許可權

許可權設定的方式有兩種,可以用數字和符號來表示,r:4,w:2,x:1,三者可以對應三位二進位制所在的位數即可記住。

chmod 777 text.txt檔案可以將其許可權修改為rwxrwxrwx

符號修改,個人認為比數字修改複雜,應用場景暫時沒有碰見,這裡暫時不做總結,覺得其中的a字元還是比較實用,這個後面再做總結吧。

資料夾與檔案的許可權

鳥哥的linux私房菜上寫了很多,覺得就這張表有用,其中的檔名,就是檔案或資料夾名稱。

這裡需要重點記錄的就是,能否進入一個資料夾的許可權是x字元指定的,並不是r字元指定,有了x許可權使用者才能進入資料夾。因此如果要將某資料夾下的某個檔案分享給其他使用者,需要給其他使用者開發資料夾的r和x許可權,而不是隻開通r許可權。

Linux的副檔名

其實 linux檔案是沒有所謂的副檔名這個概念的,具體的檔案型別在上面的檔案識別符號的第一個就已經介紹了。只是需要知道.sh結尾的就是linux下的批處理檔案。只是檔名有所謂的長度限制,單一檔案或目錄允許的最大檔名為255bytes,相當於128個漢字,夠了

Linux檔案目錄結構

該部分暫時預留,後期再深入總結

絕對路徑與相對路徑

絕對路徑:由根目錄開始寫起的檔名或目錄名稱

相對路徑:相對於當前路徑的檔名寫法。例如:./home或../home等,.代表當前目錄,也可以用./表示。..代表上一層目錄,../來表示上一層目錄。

到此Linux的第一部分就暫時告一段落,後面再繼續根據鳥哥的linux私房菜進行總結。