bash學習之檔案系統(七)
linux系統的一個特點就是將所有的內容都看作是檔案。因此至少要了解linux的檔案也是一個重要的內容。下面將介紹一下linux裡面的檔案:
1.按照檔案型別進行劃分
文字檔案: 檔案的組成主要是ASCII碼,也就是能夠直接識別成我能能夠讀懂內容是什麼的檔案(windows的txt字尾的檔案)。由於我們編輯檔案的話預設是按照ASCII碼進行識別的。因此,這種型別的檔案屬於我們一旦用編輯器開啟,並能夠直接看懂裡面是什麼內容的檔案就屬於文字檔案。
二進位制檔案: 這個檔案由二進位制碼0 、1組成,由於我們開啟檔案的話是按照ASCII翻譯後識別的,因此如果一種檔案開啟后里面屬於看不懂的亂碼,那麼八成就是二進位制檔案了。雖然我們看不懂這種檔案的具體含義,但是這種檔案計算級卻可以直接識別執行(當然我們的檔案裡面沒有什麼致命錯誤)。
目錄檔案: 即windows系統下的資料夾(我們看到的是這樣),在計算級中實際存放的是檔名和檔案索引節點之間的關聯關係。
連結檔案: 指向其他檔案的檔案,類似快捷方式(擴充套件linux系統的快捷方式是.desktop的檔案,windows的快捷方式是.lnk字尾)。
裝置檔案: 就是各種硬體裝置,linux系統中所有的裝置也均是以檔案的形式展現的
管道裝置: 負責程序間的通訊。
2.根據Linux系統下的目錄進行功能的大致劃分
/etc 目錄:這個目錄是許多檔案的配置檔案(系統的,或apt等一件安裝的),我很如果更改某一個軟體或系統的配置的話,那麼基本上就是在這個檔案內相應的位置進行更改。另外要說明的是這個位置的檔案很多都是那些軟體載入的時候直接載入這裡的配置。因此,你如果直接更改那些配置原本的位置的值可能沒有效果,原因很可能就是載入/etc中的配置的話直接把你更改的那些給覆蓋掉了。
/home 目錄: 即我們一般方法建立的使用者就是在這裡面創個只屬於你的資料夾。因此如果是單個使用者自己的配置,那麼也是在這裡你的使用者對應資料夾內。
/root 目錄: root(超級)使用者的目錄
/boot 目錄:系統開機時用到裡面的相應檔案
/bin 目錄: 可以執行的命令
/sbin 目錄: 超級使用者可以執行的命令
/usr 目錄:裡面的屬於大部分使用者都能夠訪問執行的目錄。因此,如果我們要下載一個軟體,那麼可以把那個檔案搞到這裡面去(一般做法)
/var 目錄: 大致可以理解為是裡面內容屬於經常變化的目錄,比如搭建網站是預設路徑會給你知道這個目錄下
/tmp 目錄: 臨時快取目錄,基本無用,系統會自動清理
/media 目錄: 掛在媒體裝置的目錄,比如插一個優盤。當我們的磁碟有多個分割槽後,那麼其他的分割槽也是在這裡面。如果某個硬體異常沒有掛在到裡面,可以用mount(root使用者能用)命令去掛在上去。
/dev 目錄: 即裝置檔案,各種硬體裝置均可以在這個資料夾內找到(類似驅動程式)。
/opt 目錄:系統自帶的一些應用程式,比如wine,或者瀏覽器
還有一些系統自身有關的(如/sys ,/proc),基本沒必要去修改,這裡略過
3.linux的檔案系統的許可權
一個檔案的許可權大致分為三種,讀 寫 執行,這三種許可權分別表示為r w x。因此當我們用 ls -l 時便可以檢視到使用者對一個檔案所用的許可權。我們可以用過chmod u+_ 檔名來改變對一個檔案的許可權,其中 _ 用上面的字母進行替換來該表許可權。
另外也可以用數字進行許可權總和的表示。此時,1 – r,2 – w,4 – x。比如我有一個1.sh的檔案,當我想讓自己對他擁有全部許可權的時候可以有兩種方式
chmod u+rwx 1.sh
chmod 7 1.sh
說明一下,上面兩種語句的效果是一樣的,都是獲得檔案的讀 寫 執行許可權,但是他們的作用機理不一樣,下面是上兩兩條語句後的效果圖:
從上面我們可以看到rwx的新增是新增到了前面部分,而7是新增到了最後三個位置。但是功能一樣。
還要說明一點的就是,linux和windows系統有一點是相同的,就是我們雖然可以建立一個管理員使用者,但是我們建立的總是是那種閹割版的,有些東西哪怕已經是管理員使用者,還是隻能切換到root , administrator去實現。
4.有關檔案的重定向問題
重定向的話 <, >來進行表示
< : 輸入的重定向,把後面檔案內的資訊作為輸入。
> : 輸出重定向,把前面檔案內容的輸出重定向到後面的檔案中去,沒有的話建立,如果有的話就覆蓋原來資訊。
>> :輸出重定向,類似> 如果有的話,會在後面追加