⑴ linux-vim三種模式
vi編輯器是所有Unix 及 Linux 系統下標準的編輯器,類似於windows系統下的notepad(記事本)編輯器,由於在Unix 及 Linux 系統的任何版本,vi編輯器是完全相同的,因此可以在其它任何介紹vi的地方都能進一步了解它,vi也是Linux中最基本的文字編輯器,學會它後,我們將在Linux的世界裡暢行無阻,尤其是在終端中。
關於vim:
vi和vim都是Linux中的編輯器,不同的是,vim比較高級,可以視為vi的升級版本。vi適用於文本編輯,但是vim更適用於coding。
vim的重點是游標的移動,模式切換,刪除,查找,替換,復制,粘貼,撤銷命令的使用。
vim存在三種模式(大眾的認知):命令模式、編輯模式(輸入模式)、末行模式(尾行模式)
命令模式:在該模式下不能對文件直接編輯,可以輸入快捷鍵進行一些操作(刪除行、復制行、移動游標、粘貼等)【vim打開文件後默認進入該模式】
編輯模式:在該模式下可以對文件的內容進行編輯
末行模式:可以在末行輸入命令來對文件進行操作(搜索、替換、保存、退出、撤銷、高亮等)
Vim打開文件的方式(4種,要求掌握前三種):
#vim 文件路徑 —— 打開指定文件
#vim +數字 文件路徑 —— 打開指定文件,並且把游標移動到指定行
#vim +/關鍵詞 文件路徑 —— 打開指定文件,並且高亮顯示關鍵詞
#vim 文件路徑1 文件路徑2 ... —— 同時打開多個文件
:files —— 查看當前已經打開的文件
切換文件方式:
a. 切換到指定文件: :open 文件名
b. 切換上一個/下一個文件: :bp (back prev:上一個)、 :bn (back next:下一個)
重點記住前2種方式, i 和 a
⑵ linux文件系統基礎知識
linux文件系統基礎知識匯總
1、linux文件系統分配策略
塊分配( block allocation ) 和 擴展分配 ( extent allocation )
塊分配:磁碟上的文件塊根據需要分配給文件,避免了存儲空間的浪費。但當文件擴充時,會造成文件中文件塊的不連續,從而導致過多的磁碟尋道時間。
每一次文件擴展時,塊分配演算法就需要寫入文件塊的結構信息,也就是 meta-dada 。meta-data總是與文件一起寫入存儲設備,改變文件的操作要等到所有meta-data的操作都完成後才能進行,
因此,meta-data的操作會明顯降低整個文件系統的性能。
擴展分配: 文件創建時,一次性分配一連串連續的塊,當文件擴展時,也一次分配很多塊。meta-data在文件創建時寫入,當文件大小沒有超過所有已分配文件塊大小時,就不用寫入meta-data,直到需要再分配文件塊的時候。
擴展分配採用成組分配塊的方式,減少了SCSI設備寫數據的時間,在讀取順序文件時具有良好的性能,但隨機讀取文件時,就和塊分配類似了。
文件塊的組或塊簇 ( block cluster) 的大小是在編譯時確定的。簇的大小對文件系統的性能有很大的影響。
註: meta-data 元信息:和文件有關的信息,比如許可權、所有者以及創建、訪問或更改時間等。
2、文件的記錄形式
linux文家系統使用索引節點(inode)來記錄文件信息。索引節點是一種數據結構,它包含了一個文件的長度、創建及修改時間、許可權、所屬關系、磁碟中的位置等信息。
一個文件系統維護了一個索引節點的數組,每個文件或目錄都與索引節點數組中的唯一的元素對應。每個索引節點在數組中的索引號,稱為索引節點號。
linux文件系統將文件索引節點號和文件名同時保存在目錄中,所以,目錄只是將文件的名稱和它的索引節點號結合在一起的一張表,目錄中每一對文件名稱和索引節點號稱為一個連接。
對於一個文件來說,有一個索引節點號與之對應;而對於一個索引節點號,卻可以對應多個文件名。
連接分為軟連接和硬連接,其中軟連接又叫符號連接。
硬連接: 原文件名和連接文件名都指向相同的物理地址。目錄不能有硬連接;硬連接不能跨文件系統(不能跨越不同的分區),文件在磁碟中只有一個拷貝。
由於刪除文件要在同一個索引節點屬於唯一的連接時才能成功,因此硬連接可以防止不必要的誤刪除。
軟連接: 用 ln -s 命令建立文件的符號連接。符號連接是linux特殊文件的.一種,作為一個文件,它的數據是它所連接的文件的路徑名。沒有防止誤刪除的功能。
3、文件系統類型:
ext2 : 早期linux中常用的文件系統
ext3 : ext2的升級版,帶日誌功能
RAMFS : 內存文件系統,速度很快
NFS : 網路文件系統,由SUN發明,主要用於遠程文件共享
MS-DOS : MS-DOS文件系統
VFAT : Windows 95/98 操作系統採用的文件系統
FAT : Windows XP 操作系統採用的文件系統
NTFS : Windows NT/XP 操作系統採用的文件系統
HPFS : OS/2 操作系統採用的文件系統
PROC : 虛擬的進程文件系統
ISO9660 : 大部分光碟所採用的文件系統
ufsSun : OS 所採用的文件系統
NCPFS : Novell 伺服器所採用的文件系統
SMBFS : Samba 的共享文件系統
XFS : 由SGI開發的先進的日誌文件系統,支持超大容量文件
JFS :IBM的AIX使用的日誌文件系統
ReiserFS : 基於平衡樹結構的文件系統
udf: 可擦寫的數據光碟文件系統
4、虛擬文件系統VFS
linux支持的所有文件系統稱為邏輯文件系統,而linux在傳統的邏輯文件系統的基礎上增加料一個蓄念文件系統( Vitual File System ,VFS) 的介面層。
虛擬文件系統(VFS) 位於文件系統的最上層,管理各種邏輯文件系統,並可以屏蔽各種邏輯文件系統之間的差異,提供統一文件和設備的訪問介面。
5、文件的邏輯結構
文件的邏輯結構可分為兩大類: 位元組流式的無結構文件 和 記錄式的有結構文件。
由位元組流(位元組序列)組成的文件是一種無結構文件或流式文件 ,不考慮文件內部的邏輯結構,只是簡單地看作是一系列位元組的序列,便於在文件的任意位置添加內容。
由記錄組成的文件稱為記錄式文件 ,記錄是這種文件類型的基本信息單位,記錄式文件通用於信息管理。
6、文件類型
普通文件 : 通常是流式文件
目錄文件 : 用於表示和管理系統中的全部文件
連接文件 : 用於不同目錄下文件的共享
設備文件 : 包括塊設備文件和字元設備文件,塊設備文件表示磁碟文件、光碟等,字元設備文件按照字元操作終端、鍵盤等設備。
管道(FIFO)文件 : 提供進程建通信的一種方式
套接字(socket) 文件: 該文件類型與網路通信有關
7、文件結構: 包括索引節點和數據
索引節點 : 又稱 I 節點,在文件系統結構中,包含有關相應文件的信息的一個記錄,這些信息包括文件許可權、文件名、文件大小、存放位置、建立日期等。文件系統中所有文件的索引節點保存在索引節點表中。
數據 : 文件的實際內容。可以是空的,也可以非常大,並且擁有自己的結構。
8、ext2文件系統
ext2文件系統的數據塊大小一般為 1024B、2048B 或 4096B
ext2文件系統採用的索引節點(inode):
索引節點採用了多重索引結構,主要體現在直接指針和3個間接指針。直接指針包含12個直接指針塊,它們直接指向包含文件數據的數據塊,緊接在後面的3個間接指針是為了適應文件的大小變化而設計的。
e.g: 假設數據塊大小為1024B ,利用12個直接指針,可以保存最大為12KB的文件,當文件超過12KB時,則要利用單級間接指針,該指針指向的數據塊保存有一組數據塊指針,這些指針依次指向包含有實際數據的數據塊,
假如每個指針佔用4B,則每個單級指針數據塊可保存 1024/4=256 個數據指針,因此利用直接指針和單級間接指針可保存 1024*12+1024*256=268 KB的文件。當文件超過268KB時,再利用二級間接指針,直到使用三級間接指針。
利用直接指針、單級間接指針、二級間接指針、三級間接指針可保存的最大文件大小為:
1024*12+1024*256+1024*256*256+1024*256*256*256=16843020 KB,約 16GB
若數據塊大小為2048B,指針佔4B,則最大文件大小為: 2048*12+2048*512+2048*512*512+2048*512*512*512=268,960,792 KB 約 268GB
若數據塊大小為4096B,指針佔4B,則最大文件大小為: 4096*12+4096*1024+4096*1024*1024+4096*1024*1024*1024=4,299,165,744 KB ,約 4TB
註: 命令 tune2fs -l /dev/sda5 可查看文件系統
ext2文件系統最大文件名長度: 255個字元
ext2文件系統的缺點:
ext2在寫入文件內容的同時並沒有同時寫入文件meta-data, 其工作順序是先寫入文件的內容,然後等空閑時候才寫入文件的meta-data。若發生意外,則文件系統就會處於不一致狀態。
在重新啟動系統的時候,linux會啟動 fsk ( file system check) 的程序,掃描整個文件系統並試圖修復,但不提供保證。
9、ext3文件系統:
ext3基於ext2的代碼,所以磁碟格式與ext2相同,使用相同的元數據。
ext2文件系統無損轉化為ext3文件系統: tune2fs -j /dev/sda6
日誌塊設備( Journaling block device layer,JBD)完成ext3文件系統日誌功能。JBD不是ext3文件系統所特有的,它的設計目標是為了向一個塊設備添加日誌功能。
當一個文件修改執行時,ext3文件系統代碼將通知JBD,稱為一個事務(transaction)。發生意外時,日誌功能具有的重放功能,能重新執行中斷的事務。
日誌中的3種數據模式:
1)、data=writeback :不處理任何形式的日誌數據,給用戶整體上的最高性能
2)、data=odered :只記錄元數據日誌,但將元數據和數據組成一個單元稱為事務(transaction) 。此模式保持所句句的可靠性與文件系統的一致性,性能遠低於data=writeback模式,但比data=journal模式快
3)、data=journal :提供完整的數據及元數據日誌,所有新數據首先被寫入日誌,然後才被定位。意外發生過後,日誌可以被重放,將數據與元數據帶回一致狀態。這種模式整體性能最慢,但數據需要從磁碟讀取和寫入磁碟時卻是3種模式中最快的。
ext3文件系統最大文件名長度: 255個字元
ext3文件系統的優點:可用性、數據完整性、速度、兼容性
10、ReiserFS文件系統
ReiserFS文件系統是由Hans Reiser和他領導的開發小組共同開發的,整個文件系統完全是從頭設計的,是一個非常優秀的文件系統。也是最早用於Linux的日誌文件系統之一。
ReiserFS的特點
先進的日誌機制
ReiserFS有先進的日誌(Journaling/logging)功能 機制。日誌機制保證了在每個實際數據修改之前,相應的日誌已經寫入硬碟。文件與數據的安全性有了很大提高。
高效的磁碟空間利用
Reiserfs對一些小文件不分配inode。而是將這些文件打包,存放在同一個磁碟分塊中。而其它文件系統則為每個小文件分別放置到一個磁碟分塊中。
獨特的搜尋方式
ReiserFS基於快速平衡樹(balanced tree)搜索,平衡樹在性能上非常卓越,這是一種非常高效的演算法。ReiserFS搜索大量文件時,搜索速度要比ext2快得多。Reiserfs文件 系統使用B*Tree存儲文件,而其它文件系統使用B+Tree樹。B*Tree查詢速度比B+Tree要快很多。Reiserfs在文件定位上速度非常 快。
在實際運用中,ReiserFS 在處理小於 4k 的文件時,比ext2 快 5 倍;帶尾文件壓縮功能(默認)的ReiserFS 比ext2文件系統多存儲6%的數據。
支持海量磁碟
ReiserFS是一個非常優秀的文件系統,一直被用在高端UNIX系統上,可輕松管理上百G的文件系統,ReiserFS文件系統最大支持的文件系統尺寸為16TB。這非常適合企業級應用中。
優異的性能
由於它的高效存儲和快速小文件I/O特點,使用ReiserFs文件系統的PC,在啟動X窗口系統時,所花的時間要比在同一台機器上使用ext2文 件系統少1/3。另外,ReiserFS文件系統支持單個文件尺寸為4G的文件,這為大型資料庫系統在linux上的應用提供了更好的選擇。
;⑶ linux系統下常見的文件格式有哪些
在Linux操作系統里有Ext2、Ext3、Linux swap和VFAT四種格式
Ext2:
Ext2是GNU/Linux系統中標準的文件系統。這是Linux中使用最多的一種文件系統,它是專門為Linux設計的,擁有極快的速度和極小的CPU佔用率。Ext2既可以用於標準的塊設備(如硬碟),也被應用在軟盤等移動存儲設備上。
Ext3:
Ext3是Ext2的下一代,也就是保有Ext2的格式之下再加上日誌功能。Ext3是一種日誌式文件系統(Journal File System),最大的特點是:它會將整個磁碟的寫入動作完整的記錄在磁碟的某個區域上,以便有需要時回溯追蹤。當在某個過程中斷時,系統可以根據這些記錄直接回溯並重整被中斷的部分,重整速度相當快。該分區格式被廣泛應用在Linux系統中。
Linux swap:
它是Linux中一種專門用於交換分區的swap文件系統。Linux是使用這一整個分區作為交換空間。一般這個swap格式的交換分區是主內存的2倍。在內存不夠時,Linux會將部分數據寫到交換分區上。
VFAT:
VFAT叫長文件名系統,這是一個與Windows系統兼容的Linux文件系統,支持長文件名,可以作為Windows與Linux交換文件的分區。
⑷ 列舉linux系統的4種文件類型及其屬性符號
一. 文件類型
Linux文件類型常見的有:普通文件、目錄文件、字元設備文件和塊設備文件、符號鏈接文件等,現在我們進行一個簡要的說明。
1. 普通文件
我們用 ls -lh 來查看某個文件的屬性,可以看到有類似-rwxrwxrwx,值得注意的是第一個符號是 - ,這樣的文件在Linux中就是普通文件。這些文件一般是用一些相關的應用程序創建,比如圖像工具、文檔工具、歸檔工具... .... 或 cp工具等。這類文件的刪除方式是用rm 命令。 另外,依照文件的內容,又大略可以分為:
1>. 純文本檔(ASCII):
這是Linux系統中最多的一種文件類型,稱為純文本檔是因為內容為我們人類可以直接讀到的數據,例如數字、字母等等。 幾乎只要我們可以用來做為設定的文件都屬於這一種文件類型。 舉例來說,你可以用命令: cat ~/.bashrc 來看到該文件的內容。 (cat 是將一個文件內容讀出來的指令).
2>. 二進制文件(binary):
Linux系統其實僅認識且可以執行二進制文件(binary file)。Linux當中的可執行文件(scripts, 文字型批處理文件不算)就是這種格式的文件。 剛剛使用的命令cat就是一個binary file。
3>. 數據格式文件(data):
有些程序在運作的過程當中會讀取某些特定格式的文件,那些特定格式的文件可以被稱為數據文件 (data file)。舉例來說,我們的Linux在使用者登錄時,都會將登錄的數據記錄在 /var/log/wtmp那個文件內,該文件是一個data file,他能夠透過last這個指令讀出來! 但是使用cat時,會讀出亂碼~因為他是屬於一種特殊格式的文件?
2. 目錄文件
當我們在某個目錄下執行,看到有類似 drwxr-xr-x ,這樣的文件就是目錄,目錄在Linux是一個比較特殊的文件。注意它的第一個字元是d。創建目錄的命令可以用 mkdir 命令,或cp命令,cp可以把一個目錄復制為另一個目錄。刪除用rm 或rmdir命令。
3. 字元設備或塊設備文件
如時您進入/dev目錄,列一下文件,會看到類似如下的:
復制代碼
代碼如下:
[root@localhost ~]# ls -al /dev/tty</p> <p>crw-rw-rw- 1 root tty 5, 0 11-03 15:11 /dev/tty</p> <p>[root@localhost ~]# ls -la /dev/sda1</p> <p>brw-r----- 1 root disk 8, 1 11-03 07:11 /dev/sda1
我們看到/dev/tty的屬性是 crw-rw-rw- ,注意前面第一個字元是 c ,這表示字元設備文件。比如貓等串口設備。我們看到 /dev/sda1 的屬性是 brw-r----- ,注意前面的第一個字元是b,這表示塊設備,比如硬碟,光碟機等設備。
這個種類的文件,是用mknode來創建,用rm來刪除。目前在最新的Linux發行版本中,我們一般不用自己來創建設備文件。因為這些文件是和內核相關聯的。
與系統周邊及儲存等相關的一些文件, 通常都集中在/dev這個目錄之下!通常又分為兩種:
區塊(block)設備檔 :
就是一些儲存數據, 以提供系統隨機存取的介面設備,舉例來說,硬碟與軟盤等就是啦! 你可以隨機的在硬碟的不同區塊讀寫,這種裝置就是成組設備!你可以自行查一下/dev/sda看看, 會發現第一個屬性為[ b ]!
字元(character)設備文件:
亦即是一些串列埠的介面設備, 例如鍵盤、滑鼠等等!這些設備的特色就是一次性讀取的,不能夠截斷輸出。 舉例來說,你不可能讓滑鼠跳到另一個畫面,而是滑動到另一個地方!第一個屬性為 [ c ]。
4. 數據介面文件(sockets):
數據介面文件(或者:套介面文件),這種類型的文件通常被用在網路上的數據承接了。我們可以啟動一個程序來監聽客戶端的要求, 而客戶端就可以透過這個socket來進行數據的溝通了。第一個屬性為 [ s ], 最常在/var/run這個目錄中看到這種文件類型了。
例如:當我們啟動MySQL伺服器時,會產生一個mysql.sock的文件。
復制代碼
代碼如下:
[root@localhost ~]# ls -lh /var/lib/mysql/mysql.sock </p> <p>srwxrwxrwx 1 mysql mysql 0 04-19 11:12 /var/lib/mysql/mysql.sock
注意這個文件的屬性的第一個字元是 s。
5. 符號鏈接文件:
當我們查看文件屬性時,會看到有類似 lrwxrwxrwx,注意第一個字元是l,這類文件是鏈接文件。是通過ln -s 源文件名 新文件名 。上面是一個例子,表示setup.log是install.log的軟鏈接文件。怎麼理解呢?這和Windows操作系統中的快捷方式有點相似。
符號鏈接文件的創建方法舉例:
復制代碼
代碼如下:
[root@localhost test]# ls -lh log2012.log</p> <p>-rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log</p> <p>[root@localhost test]# ln -s log2012.log linklog.log</p> <p>[root@localhost test]# ls -lh *.log</p> <p>lrwxrwxrwx 1 root root 11 11-22 06:58 linklog.log -> log2012.log</p> <p>-rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log
6. 數據輸送文件(FIFO,pipe):
FIFO也是一種特殊的文件類型,他主要的目的在解決多個程序同時存取一個文件所造成的錯誤問題。 FIFO是first-in-first-out的縮寫。第一個屬性為[p] 。
⑸ linux四種文件類型
ll 命令可以查看 分為 普通文件 目錄文件 鏈接文件 設備文件想了解更多可以看看《linux就該這么學》
⑹ linux文件只讀模式怎麼解除
解除Linux文件只讀模式的方法有以下幾種:
1. 使用chmod命令:chmod +w 文件名
2. 使用vim編輯器:在vim編輯器中輸入: set w
3. 使用chattr命令:chattr -i 文件名
4. 使用mount命令:mount -o remount, rw 文件所在的目錄
⑺ 系統掛裝表的文件名系統掛裝表的作用是什麼其文件格式是什麼(linux)
/etc/fstab。
在某個目錄下執行,看到有類似 drwxr-xr-x ,這樣的文件就是目錄,目錄在Linux是一個比較特殊的文件。注意它的第一個字元是d。創建目錄的命令可以用 mkdir 命令,或cp命令,cp可以把一個目錄復制為另一個目錄。刪除用rm 或rmdir命令。
Linux管理文件的模式與windows不一樣,是採用文件夾模式,在linux系統當中,新的硬碟加入也是以文件夾的方式掛載到主分區,而不是採用windows的分區模式,通常只能看到Ext4分區,看不到linux的引導分區和交換分區的。
(7)linux文件模式擴展閱讀:
如果英文足夠好,那完全可以不靠任何人就精通linux,只要會用man。Man實際上就是查看指令用法的help,學習任何一種UNIX類的操作系統最重要的就是學會使用man這個輔助命令。man是manual(手冊)的縮寫字,它的說明非常的詳細,但是因為它都是英文,看起來非常的頭痛。建議大家需要的時候再去看man,平常嘛,記得一些基本用法就可以了。
⑻ linux操作系統文件類型有哪幾種,有什麼區別
Linux文件類型常見的有:普通文件、目錄文件、字元設備文件和塊設備文件、符號鏈接文件等,現在我們進行一個簡要的說明。
1. 普通文件
我們用 ls -lh 來查看某個文件的屬性,可以看到有類似-rwxrwxrwx,值得注意的是第一個符號是 - ,這樣的文件在Linux中就是普通文件。這些文件一般是用一些相關的應用程序創建,比如圖像工具、文檔工具、歸檔工具... .... 或 cp工具等。這類文件的刪除方式是用rm 命令。
2. 目錄文件
當我們在某個目錄下執行,看到有類似 drwxr-xr-x ,這樣的文件就是目錄,目錄在Linux是一個比較特殊的文件。注意它的第一個字元是d。創建目錄的命令可以用 mkdir 命令,或cp命令,cp可以把一個目錄復制為另一個目錄。刪除用rm 或rmdir命令。
3. 字元設備或塊設備文件
區塊(block)設備文件 :就是一些儲存數據, 以提供系統隨機存取的介面設備,舉例來說,硬碟與軟盤等就是啦。 你可以隨機的在硬碟的不同區塊讀寫,這種裝置就是成組設備。你可以自行查一下/dev/sda看看, 會發現第一個屬性為[ b ]。
字元(character)設備文件:亦即是一些串列埠的介面設備, 例如鍵盤、滑鼠等等。這些設備的特色就是一次性讀取的,不能夠截斷輸出。 舉例來說,你不可能讓滑鼠跳到另一個畫面,而是滑動到另一個地方。第一個屬性為 [ c ]。
4. 數據介面文件(sockets):
數據介面文件(或者:套介面文件),這種類型的文件通常被用在網路上的數據承接了。我們可以啟動一個程序來監聽客戶端的要求, 而客戶端就可以透過這個socket來進行數據的溝通了。第一個屬性為 [ s ], 最常在/var/run這個目錄中看到這種文件類型了。
5. 符號鏈接文件:
當我們查看文件屬性時,會看到有類似 lrwxrwxrwx,注意第一個字元是l,這類文件是鏈接文件。是通過ln -s 源文件名 新文件名創建的。這和Windows操作系統中的快捷方式有點相似。
⑼ linux如何退出文件查看模式cat
您好,方法
cat最基本的用法就是查看文件的內容,
第二種用法就是給文件中每一行加入編號,假設test2.txt文本的內容入手所示!
然後執行cat -n test2.txt > test2_1.txt之後,可以看到文件test2_1.txt中每一行前面都加上了行號。
如果不想空行也加上行號,那麼執行cat -b test2.txt > test2_2.txt, 則可以看到test2_2.txt文件中空行沒有加上行號。
cat命令的第三種方法就是合並兩個文件內容,假設有如下兩個文件test3_1.txt和test3_2.txt,
然後執行cat test3_1.txt test3_2.txt > test3.txt之後,可以看到test3.txt的內容已經將兩個文件的內容合並。
cat命令的第四種方法就是創建文件,執行cat > test4.txt << EOF, 然後輸入文本內容,最後執行EOF之後,cat命令就會跳出,查看test4.txt的內容就是剛剛輸入的信息。
如果想要在已有的文件最後增加內容,那麼執行cat >> test4.txt << EOF,接著輸入信息,最後再執行EOF退出,新輸入的信息就會增加到文本的最後。
最後如果執行cat > test5.txt命令來輸入創建文件,那麼執行ctrl + Z來退出cat命令。
⑽ Linux的文件系統
Linux的文件類型分為普通文件、d目錄文件、b塊設備文件、c字元設備文件(串口設備)、s套接字文件(特殊文件scoket)、l鏈接文件。
例如下圖,d開頭的是目錄文件,-開頭的是普通文件,l開頭的是鏈接文件
以touch,cp,tar,echo,cat等工具命令創建的文件都是普通文件,普通文件又分為以下三種:
1)純文本文件:文件內容可以直接讀取到數據(ASCL text)
2)二進制文件:linux中可執行文件(命令)
3)數據格式文件(一種特殊的文件 data)
ls -ld可以顯示所有的目錄文件
linux系統中的鏈接文件與WIN系統的快捷方式基本差不多,linux中鏈接文件又分為硬鏈接與軟鏈接。
硬鏈接: 是指通過索引節點來進行鏈接,在系統中多個文件各指向同一個索引節點,是可以的正常允許的,這種情況下的文件被稱之為硬鏈接。實際生產環境中用戶可以通過硬鏈接的方式來防止誤刪重要數據。
ln 源文件名 鏈接文件名 創建硬鏈接文件
軟鏈接: 也稱符號鏈接(快捷方式),實際上它是一個文本文件,它存儲著指向源文件鏈接的位置信息。
ln -s 源文件名 鏈接文件名 創建軟鏈接文件
另外要注意目錄是不可以創建硬鏈接文件的,但可創建軟鏈接文件,如下圖:
關於文件的軟鏈接和硬鏈接,總結起來有以下四種情況:
1)刪除源文件時,硬鏈接文件正常使用,軟鏈接文件就失效了。
2)刪除硬鏈接時,對源文件與軟鏈接無影響。
3)刪除軟鏈接時,對源文件與硬鏈接無任何影響。
4)刪除源文件、硬鏈接文件後,整個文件就會被刪除。
對於目錄的軟鏈接和硬鏈接,總結如下:
1)目錄是不可創建硬鏈接文件,可以創建軟鏈接文件。
2)目錄的軟鏈接是生產環境中非常實用的。
3)所有目錄都有一個硬鏈接「.」,目錄硬鏈接是不可跨越文件系統的。
Linux文件的擴展名主要是為了方便區分不同的文件,和windows的強類型擴展名不一樣。
1、.tar .tar.gz .tgz .zip 這類表示壓縮文件
2、.sh 表示shell腳本文件
3、.html .php .jsp 網頁文件
4、.conf 系統服務的配置文件
5、.rpm 表示RPM安裝包文件
每一個文件都有自己的屬性信息,它的屬性信息包括:索引節點、文件類型、許可權信息、所有者、所屬組、最近修改時間、大小、文件名或目錄名、硬鏈接數量。
我們以下圖的cron.daily這個文件為例,d表示文件類型是目錄文件,rwxr-xr-x這個表示許可權,第一個rwx表示的文件所有者用戶的許可權,第二個r-x表示的是所屬組的許可權,第三個r-x表示的是其他用戶的許可權。2表示硬鏈接數量,第一個root表示文件所有者是root,第二個root表示所屬組,42表示文件大小,May 27 2021表示最後的修改時間,corn.daily是文件名稱。
其中的索引節點編號需要通過ls -i才能看到,在最左邊顯示的那一串數字,如下圖所示: