(1
)建立硬鏈結
link("dest_file
", "src_file");
(2)unlink乙個硬鏈結,不一定會刪除檔案,只有當引用計數為0時才真正刪除檔案
unlink("hard_file");
unlink函式的真正含義:刪除目錄項,並減少乙個鏈結數,如果鏈結數為0
並且沒有任何程序開啟該檔案,則該檔案內容真正被刪除,但是若有程序開啟了該檔案,則檔案暫時不刪除直到所有開啟該檔案的程序結束時才真正刪除檔案。 (3
)順便複習一下sizeof和strlen的區別
1)sizeof以位元組為單位計算大小,即佔多少位元組。
因為緩衝區已用已知字串進行了初始化,其長度是固定的
所以sizeof在編譯期計算緩衝區長度 2
)strlen在執行時執行,會進行一次函式呼叫,得到
的是陣列
的長度,按型別計算
比如如果是int,那麼長度以4位元組為乙個長度單位
2)對於字串而言,
sizeof會包含'\0
'字元,而strlen不包含'\0'
軟鏈結和硬鏈結的建立
硬鏈結就是同乙個檔案使用了多個別名 他們有共同的 inode 硬鏈結可由命令 link 或 ln 建立,如 link oldfile newfile ln oldfile newfile 由於硬鏈結是有著相同 inode 號僅檔名不同的檔案,因此,刪除乙個硬鏈結檔案並不影響其他有相同 inode 號...
Linux 硬鏈結 軟鏈結的建立
inode編號 作業系統是通過inode編號來識別檔案資訊,不包括檔名,因為作業系統內部不使用檔名,而是使用inode號碼來識別檔案 系統內部這個過程分為三部 首先 系統找到這個檔名對應的inode號碼 其次 通過inode號碼,獲取inode資訊 最後 根據inode資訊,找到檔案資料所在的blo...
inode 及軟鏈結 硬鏈結
inode 用來儲存檔案的元資訊的索引節點。包括檔案的建立者 建立日期 檔案的大小等。linux下一切皆檔案,每個檔案都有其對應的inode。inode內容 檔案的位元組數 文i件擁有者的userid 檔案的groupid 檔案讀 寫 執行許可權 mtime 檔案內容上次變動的時間 atime 檔案...