我正在使用 ubuntu 20.04。
今天我重新安装了它,然后我尝试通过终端执行此命令
sudo nano /etc/fstab
当我执行它时,它会打开一个文本文件,它应该打开文本编辑器应用程序进行编辑......但它却是在终端中打开文本文件。
现在我想通过文本编辑器打开该文本文件。那么,我该怎么做呢?
答案1
系统按照您的要求执行了操作。在 中打开文件nano
,这是一个可以在终端中运行的小型编辑器。它还将在文本控制台中运行,这在图形环境损坏的情况下非常有用。
Ubuntu 中图形编辑器的命令是gedit
。但是,您不能只nano
在命令中更改。这将以提升的权限(即以 root 身份)启动图形编辑器。在某些情况下,以提升的权限(以 root 身份)运行图形程序可能会影响您家中的文件权限,并可能导致问题。此外,出于安全原因,不鼓励以 root 身份运行图形应用程序,并且已被弃用。因此,切勿使用该sudo
命令来运行图形应用程序。仅用于sudo
终端命令。
目前支持使用图形编辑器编辑系统文件的方式是使用admin://
URI。因此,/etc/fstab
使用以下命令打开系统文件,以安全的方式使用 root 权限进行编辑:
gedit admin:///etc/fstab
出现一个图形对话框,您需要在其中提交用户密码。在会话中第一次输入密码时,系统会连续询问您两次。
通过此机制,您将以普通用户身份编辑系统文件的临时副本。一旦您点击保存,系统文件就会更新。
查看一些替代方法使用链接中的 GUI 编辑器编辑文件。
答案2
nano
是一个命令行文本编辑器,没有 GUI 界面。因此,请在终端内的编辑器nano file
中打开“文件” nano
。现在,需要注意的是下列:
图形应用程序通常将设置和其他用户特定数据存储在用户主文件夹内的配置文件中。应用程序用来确定应使用哪个文件作为用户主文件夹的主要机制是 HOME 环境变量。(您可以使用 echo $HOME 自行检查)。
假设您以 root 身份运行 gedit(图形文本编辑器)。如果您运行 sudo gedit,HOME 将继续指向您的主目录,即使程序以 root 身份运行。因此,gedit 将以 root 身份将配置文件写入您的主目录。这有时会导致配置文件归 root 所有,因此您无法访问(当您稍后以自己而不是 root 身份运行程序时)。这主要发生在应用程序必须创建新配置文件时。默认情况下,新创建的文件归创建它们的用户所有(在本例中是 root,而不是您)。
如果您想直接使用 sudo 运行 gedit 之类的图形应用程序,您可以运行:
sudo -H gedit
-H 标志使 sudo 设置 HOME 指向 root 的主文件夹(即 /root)。
使用 then编辑文件时sudo
,最好使用命令行编辑器,如nano
或vi
,否则使用sudo -H ...
。但是,正如@vanadium 的回答:
此外,出于安全原因,不建议以 root 身份运行图形应用程序,并且这种做法已被弃用。因此,切勿使用 sudo 命令运行图形应用程序。仅对终端命令使用 sudo。
答案3
正如其他答案所述,nano
这是一个存在于终端中的文本编辑器。
使用箭头键和Pg UP和Pg Down键移动文本光标。
使用CTRL++来SHIFTc复制突出显示的文本。
使用CTRL++来SHIFTv粘贴在文本光标的位置显示文本。
您也可以像平常一样右键单击,然后从下拉菜单中选择复制或粘贴。
使用CTRL+o然后ENTER按保存更改到您的文件中。
使用CTRL+x来退出纳米。
到搜索文本在文件中,使用CTRL+ w,然后键入搜索查询,然后按ENTER。要重复上次搜索,请按CTRL+ w,然后按ENTER查找下一个实例。
此外,您可以使用Backspace和Delete键一次删除单个字符,并且可以使用CTRL+k删除整行文本,但是如果您使用换行功能且不熟悉有时被视为段落的新行,请务必小心,请不要使用CTRL+k以免意外删除某些内容。