我在 Ubuntu 18.04 上。如果我进入主目录并右键单击并选择“新文档”,然后选择“空文档”,则会出现一个名为“无标题文档”的新文件。现在我想编辑此文件中的内容,因此在终端中输入:
gedit ~/无标题文档
实际情况是,gedit 打开了两个临时文档,两个文档都还不存在,一个名为“Untitled”,另一个名为“Document”。我该如何编辑名为“Untitled Document”的文件?另外,要编辑此类文档的内容,我必须使用终端吗?我右键单击时没有看到任何编辑选项。
答案1
你应该输入:
gedit ~/Untitled\ Document
为什么?“空格”是 Linux 中的一个字符,它是“解释”而不是“读取”。
在终端命令的一系列参数中,空格将被解释为或意味着:“现在我将传递下一个参数”。
考虑到这一点,您的 gedit 完全按照您的要求去做了,首先编辑一个名为“Untitled”的文档,如果它不存在,就创建它,一旦您保存并退出,就继续编辑一个名为“Document”的文档,如果它不存在,就创建它。
因此,如果您希望读取而不是解释空格,则需要“转义”它。基本上,这是\
Linux 下 (反斜杠) 的主要用途。
反斜杠字符的解释是这样的:“无论跟在我后面的是什么,都忽略它,只将其读作字符串(文本)而不是可解释的字符”。
如果您在输入后单击并将文件拖到终端,gedit
您会发现它用(反斜杠)填充\
。
这也适用于长文件路径,如果其中一个文件夹中有空格,则必须将其转义。
一个简单的解决方法是在路径或文件名周围使用双引号,以便将整个内容读取为字符串(文本),如下所示:
gedit ~/"Untitled Document"
最后一个技巧是使用终端的自动完成功能:Tab
如果你已经输入区分大小写名称或路径的一部分至少有 2 个字符长,tab 将自动完成唯一可能的匹配。
假设您没有其他以Un
gedit ~/Un
Tab
将填写您缺失的文件,包括\
。
Tab如果有多个选项,您还可以使用 double作为剩余选项的快速列表。
如果只有一个选项,Tab则会自动完成选择,而无需您预先填充任何字符。
顺便说一句,如果你打开一个终端,那么在它打开的那一刻,你就已经在“家”了,又名:~/
输入额外的部分是可行的,但没有必要:gedit Untitled\ Document
运行正常。如果您使用 cd 切换到另一个目录(例如cd Downloads
),这也许会有意义,但您始终可以只键入cd
一个,它会带您回到主页,您可以输入路径而不必~/
再次键入,这样可以减少击键次数并加快速度。