这可能微不足道,但我对 Linux 还很陌生,无法在网上找到任何信息。
在文件夹中,我可以执行命令find . -regex '.*py'
并得到以下结果:
./.#netMHC3.2.py
这是当前目录中的文件吗?我该怎么做才能显示其内容?
答案1
以“.”开头的文件是隐藏文件。我不知道在某些类型的文件上使用“#”的标准。我在文本编辑器生成的“备份”文件中看到过它。
要显示文件的内容,请使用“cat”命令:
cat .#netMHC3.2.py
'.' 和 './' 是您正在工作的当前目录(使用 pwd 知道您所在的位置)。
答案2
老问题了,但第一次在 Google 上搜索却没有正确答案。
这些文件是“锁定”文件,通常由编辑器创建。锁定文件有多种不同的形式,但两者emacs
都会joe
创建名称类似于您的示例中的符号链接 - 如 .#[original-filename]。
锁定文件用于防止多个实例同时编辑同一个文件(例如,2 个不同的用户想要编辑同一个文件)。
如果你跑
$ joe netMHC3.2.py
将创建一个名为
.#netMHC3.2.py
当编辑器关闭时,文件会被删除。如果编辑器崩溃,文件会被保留下来并变成“过期锁”。此时您可以手动删除文件,但大多数编辑器会在下次编辑文件时自动为您提供该选项。
答案3
正如 Fernando 所说,文件名前面的“.”表示它是隐藏的。隐藏意味着使用该ls
命令时,隐藏文件不会成为输出的一部分。ls -a
但是,您可以使用它来查看它们。
这也适用于文件管理器。默认情况下,大多数图形文件管理器不会显示隐藏文件,除非您告诉它们。
主目录中的隐藏文件通常用于存储应用程序的配置数据。 ~/.bashrc
将包含 Bash shell 的任何配置数据,并且仅适用于您的帐户。
答案4
嗯,这是一个非常老的问题,但是正确答案不在这里,所以......
#filename#
是 emacs 使用的工作文件。我猜像自动保存文件之类的。如果您的常规文件(filename
不带前后标签)是最新的,那么您可以删除该#filename#
文件。