如何在Linux上用Gedit实现文本文件的图形化编辑

Linux用户通常使用基于终端的工具(如Nano和VIM)编辑配置文件。如果您想要以图形方式编辑文件-甚至是系统文件-Gedit文本编辑器可以让您轻松自如。

文件,无处不在的文件

关于Linux和其他基于Unix的操作系统(如MacOS),经常重复的一句话是“一切都是文件”。

虽然这并不严格准确,但文本文件通常用于系统日志和配置。您可以阅读这些文件以了解有关操作系统内部工作方式的更多信息,还可以编辑这些文件以更改其行为。

默认的GNOME文本编辑器是Gedit,因此您可以在任何具有GNOME桌面环境的系统上找到它。这包括Ubuntu、Fedora、Debian、CentOS和Red Hat。当你所需要的只是足够的编辑器来完成工作时,这是一个编辑文件的便捷工具--而不需要像vim这样的一些强大的编辑器那样的学习曲线。

相关:在Linux中“一切都是文件”是什么意思?

启动Gedit

要从命令行启动Gedit,请键入Gedit并按Enter键。

Gedit的文本编辑器很快就会出现。

这是一个整洁的应用程序窗口。无论你在做什么,你都可以毫无分心地继续打字。

当然,您也可以从Linux桌面的应用程序菜单启动Gedit。它通常被命名为“文本编辑器”。只需在应用程序菜单中搜索“Gedit”即可。

将Gedit作为后台任务启动

终端窗口将等待Gedit关闭,然后返回命令提示符。如果您希望在Gedit仍处于打开状态时使用终端窗口,请使用此命令启动Gedit。这将作为后台任务打开Gedit。命令行提示符立即返回,即使Gedit正在运行,您也可以继续使用终端窗口。

键入Gedit、空格、与号&,然后按Enter键-如下所示:

gedit &

打开现有文件

要打开现有的文本文件,请单击Gedit工具栏中的“打开”按钮。也可以按Ctrl+O打开文件。

这将打开“最近使用的文件”菜单。如果要重新打开其中一个列出的文件,请单击该文件的名称。如果要打开不同的文件,请单击“Other Documents…”菜单底部的按钮。

这将打开一个标准的文件打开对话框。您可以使用此选项浏览到要编辑的文件的位置。

突出显示要编辑的文件后,单击绿色的“打开”按钮。

从命令行打开文件

您可以要求Gedit在文件启动后立即打开它,方法是在命令行上提供文件名。这将使Gedit加载文件,以便在Gedit出现时即可对其进行编辑。

gedit ana.c

Gedit的语法突出显示特性使其特别适合编辑程序源代码文件和shell脚本。

语法突出显示源文件中的单词,以便很容易识别变量、保留字、注释、参数等。

您正在编辑的文件的名称将显示在工具栏中。如果已修改该文件,则文件名旁边会显示一个星号*。

这会让您知道已对文件内容进行了更改。它可以提醒您,如果您想要保留更改,则需要保存该文件。

将更改保存到文件

要保存更改,请单击工具栏中的“保存”按钮。您也可以按Ctrl+S保存文件。

要用不同的名称或在不同的位置保存文件,请单击工具栏上的“菜单”按钮,然后从菜单中选择“另存为”。

这将打开一个标准的文件保存对话框。您可以浏览到要保存文件的目录,并且可以提供文件的名称。单击绿色的“保存”按钮保存文件。

编辑系统文件

要编辑系统文件,通常需要使用sudo,因为该文件的所有者可能是root。严格地说,即使不使用sudo,您也可以打开系统文件,但是除非您使用了sudo,否则无法将任何更改保存回文件。

sudo gedit /etc/samba/smb.conf

警告:如果您不确切地知道您的更改将对您的系统造成什么影响,请不要编辑系统文件。如果弄乱了错误的系统文件,您可能会在重新启动后发现自己被锁定在计算机之外。

此命令打开Gedit并加载samba配置文件进行编辑。

将所有权和权限复制到新文件

编辑系统文件的一种谨慎方式-因此也是值得推荐的编辑系统文件的方式-是复制文件,然后编辑副本。编辑完新文件后,可以将其复制回原始文件。如果你把复制的文件编辑得乱七八糟,那也没什么坏处。把它删除,然后重新开始。

复制文件时,可以更改文件所有权,并且可以更改文件模式权限。在将新版本复制到原始文件之前,您需要确保新文件上的这些设置与原始文件上的完全相同。这就是你可以做到的。

假设我们想要编辑fstab文件。

为确保更改了文件所有权和模式权限,我们将创建一个新文件,然后将现有文件复制到该文件上。此步骤纯粹是为了演示目的,以确保新文件不具有与原始文件相同的模式权限和所有权。在编辑您自己的文件时,您不需要执行此操作。

touch new_fstab

我们可以使用ls检查文件属性,并查看它拥有哪些文件模式权限以及文件所有者是谁。

ls -l new_fstab

文件所有者为Dave,文件模式权限对于文件所有者为读和写,对于组和其他人为只读。

现在,我们将复制/etc/fstab文件覆盖我们刚刚创建的新文件。然后,我们将检查文件属性以查看它们是否已更改。

sudo cp /etc/fstab new_fstabls -l new_fstab

fstab已复制到新的_fstab文件。new_fstab的原始文件属性没有更改。让我们检查一下原始fstab文件的文件属性。

ls -l /etc/fstab

正如我们所看到的,所有者是root,文件模式权限是不同的。组权限为读和写。new_fstab的组权限是只读的。“在复制回文件之前,我们需要更正这两个属性。

首先,我们将启动Gedit并编辑new_fstab文件以进行所需的更改。

gedit new_fstab

编辑完文件并保存更改后,我们需要将文件所有权和文件模式权限设置回应有的状态。

我们可以使用chmod和chown命令的--reference选项来实现这一点。

--reference选项接受文件名作为参数。它强制chmod和chown从该文件获取文件模式权限和文件所有权值,并将它们复制到目标文件。然后,我们可以使用ls检查编辑后的文件的属性是否设置正确,然后再将其复制回原始文件。

sudo chmod --reference=/etc/fstab new_fstabsudo chown --reference=/etc/fstab new_fstabls -l new_fstab

文件权限和所有权现在是正确的。我们可以将new_fstab复制到现有的fstab上,这样我们的更改就完成了。

由于这些是对fstab文件的更改,因此它们将在下次重新启动计算机时生效,或者如果按如下方式使用mount命令,则会立即生效:

sudo mount -a

在外面小心点

我的座右铭是谨慎,我不会高高在上地重复警告。如果您完全不确定对系统文件的更改将如何使您的计算机运行,请不要进行更改。

当您确实需要编辑文本文件时,无论它是不是系统文件,您都会发现Gedit是一个快速而简单的编辑器,它不会因为太多的选项而使您停滞不前,而且有足够的功能让您完成工作。

相关文章