Node.js日記:文件系統

爲何要有計算機文件系統

計算機運行時所需要的數據和代碼從主存儲器或者內存中來。

如果計算機不在運行狀態時,這些數據和代碼保持在何處呢?

我們當然可以試一下內存,但問題是內存不是持久性的存儲介質,它是進程運行過程中臨時分配的存儲空間。一旦進程結束運行,其所佔內存空間就會被釋放,存放在內存的數據和代碼也將消失。

而且,內存需要電能維持才能保持數據(指⼀般的內存),一旦斷電,所有數據都將丟失。

因此,數據和代碼要想長久保持,就需要一個更爲持久的地方來存放,這個持久地方就是磁盤

文件系統是操作系統提供的一個抽象。它是一個子虛烏有的東西,看不見、摸不着,但卻可以使用,介於磁盤與用戶之間。

文件系統令磁盤變得容易使用,把用戶從數據存放的細節中解放出來,用戶不需要知道內容存放在什麼地方,也不需要知道如何存放,更不需要知道磁盤到底是如何操作的。

因此,文件系統就是磁盤的一個抽象。當然文件系統不限定在磁盤上,也可以在光盤,U盤,這裏主要說明基於磁盤的文件系統。

簡單地說,文件件系統將其接觸的磁盤物理特性轉換爲用戶看到的路徑和文件。用戶對磁盤進行訪問只需要給出文件和路徑即可,無須知道磁柱、磁道、扇面、數據塊等信息。

        

文件系統

從中看到什麼?是不是有路徑,文件夾(其實是一種特殊文件),文件名,文件信息等等。還有不同操作系統之間有差異,比如路徑分割符。

使用 JavaScript 操作文件

如何手動操作文件,我們已經很熟悉,比如新建文件、新建目錄、刪除文件等等。

但作爲程序員,我們是要通過代碼去操作文件的,比如現在有一個需求,通過代碼獲取一個文件的信息打印在控制檯裏面,如何實現呢?

Node.js 的 API 內置有兩個模塊 path 和 fs 提供了這樣的 API(換句話說我們使用 JavaScript 代碼編寫程序運行在 Node.js 環境中就可以操作文件),可以輕鬆完成上面的需求。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章