当我ls在终端中输入时,它会显示存在的文件以及我已删除的文件。如何只看到当前文件,为什么会ls保留已删除文件的记录?
ls显示已删除的文件名,后跟波浪号 ( ~)。
ls确实没有缓存文件名。它确实向您展示了当前文件系统上的确切内容。但是,正如@Ravan 所暗示的那样,您的目录中可能有类似命名的文件。这些通常是由 Vim 和 Emacs 等程序创建的运行时缓存或锁定文件,但几乎可以是任何东西。例如,如果我在一个终端中执行以下操作:
$ touch foo
$ vim foo
Run Code Online (Sandbox Code Playgroud)
然后我会在另一个终端中看到以下内容:
$ ls -A
foo .foo.swp
Run Code Online (Sandbox Code Playgroud)
.foo.swp 是一个隐藏的临时文件,如果 Vim 很好地退出,它将被删除。
如果这些文件从不再打开的早期编辑会话中遗留下来,则可以安全地删除它们。只需确保引用文件名,因为它们可能包含特殊字符,如波浪号 ( ~):
$ rm '.foo~'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5666 次 |
| 最近记录: |