我正在為學校做一項作業,但在讓這部分正常工作時遇到問題。
任務是讓我在 CLI 中建立一個文件,在 GEDIT 中開啟並編輯該文件而不儲存,然後列出目錄。根據說明,當我列出目錄時,我已打開並附加但未保存的文件應在其後顯示“~”,但它沒有顯示。
我錯過了什麼嗎?
答案1
是的,你錯過了一些東西:當你首先打開它。你只會看到它儲存後您開啟的文件。
gedit如何保存文件
目前文件已重新命名。然後,修改後的內容將寫入一個新文件,該文件的名稱與您開啟的文件的名稱相同。
~
如果在「首選項」、「編輯器」標籤中啟用了「儲存前建立檔案的備份副本」選項,則透過在檔案名稱中新增 來重新命名備份檔案。否則,它被重命名為以點開頭的隨機字串.
。如果儲存成功,該隨機命名的檔案將會被刪除。
與其他典型的基於終端的編輯器的行為進行對比
圖形編輯器 Gedit(和其他圖形編輯器)的這種行為會影響硬連結的工作。如上所述,這些編輯器實際上將您修改的內容保存在新檔案下,即新的索引節點下。 Linux 硬連結指向一個 inode。文件系統上其他位置的相同文件的硬連結將繼續指向舊數據,並且不再連結到已更改的文件。通常,這不是用戶所期望的。然而,這種方法更安全:如果保存失敗,原始內容仍然保留在磁碟上。
傳統的(特別是基於終端機的)Linux 編輯器會將更新的內容儲存到相同的 inode。它們將更新的內容寫入同一索引節點,取代舊的內容。