📜  Linux编辑文件

📅  最后修改于: 2020-12-07 08:04:03             🧑  作者: Mango

Linux编辑文件

Linux文件系统使我们可以对文件进行各种操作,例如创建,编辑,重命名,删除。我们可以通过不同的Linux编辑器(例如vim,nano,Emacs,Gedit,Gvim等)来编辑文件。

如何在Linux中编辑文件

让我们了解如何通过不同的文本编辑器在Linux服务器上编辑文件。

  • 使用VI编辑器编辑文件

VI编辑器是基于Linux的系统中使用最广泛的文本编辑器。 Vi编辑器具有多种模式,例如普通模式,插入模式,命令模式,行模式等。每种模式都允许我们操作其特定的操作。

由于其形式,它被最广泛地使用。大多数工具只有一种模式。它们接受输入并执行命令的操作,但是Vi有几种模式。

启动Vi时,它将以正常模式打开,该模式基本上是命令模式。在这种模式下,我们键入的任何内容都被视为命令,而不是输入。

有时,Vi看起来像是一个典型的编辑器,但是当您习惯了它时,它将感到您喜欢强大的编辑工具之一。

在编辑文件之前,让我们了解如何在Vi编辑器中切换模式:

  • ESC键进入正常模式
  • i键进入插入模式。
  • :q!键退出编辑器而不保存文件。
  • :wq!密钥保存在编辑器中更新文件并退出。
  • :w test.txt将文件另存为test.txt

现在,让我们了解如何使用Vi编辑器编辑文件。

要编辑文件,请首先使用cat命令创建文件:

cat > Demo.txt

上面的命令允许在终端上输入文件的内容,输入文件的内容,然后按CTRL + D键保存文件。考虑下面的终端快照:

要编辑此文件,请执行以下命令以使用Vi编辑器打开:

vi Demo.txt

上面的命令将在正常模式下使用Vi编辑器打开文件。考虑下面的编辑器图像:

该文件在正常模式下打开,将其切换为插入模式,请按“ ESC”键,再按“ i”键。将光标置于所需位置并输入一些文本。要保存文件并退出编辑器,请按“ ESC”键,然后按:wq!。按键考虑下面的编辑器图像:

现在,我们已经使用Vi编辑器成功编辑了文件。此后将关闭编辑器,并返回到命令行。要查看文件内容,请按以下方式执行cat命令:

cat Demo.txt

考虑下面的终端卡扣。

  • 使用Nano文本编辑器编辑文件

Nano还是基于Linux的系统中最常用的编辑器之一。它是Linux的直接而有影响力的编辑器。它是Linux发行版的内置编辑器。在使用它之前,我们不需要任何有关nano编辑器的知识。在nano中,不使用任何主要命令来对该文件进行操作。所有基本操作都显示在编辑器的底部。我们可以使用CTRL键触发它们,例如,要保存文件,请按CTRL + O键,要退出编辑器,请按CTRL + X键。

要使用nano编辑器编辑文件,请使用以下命令从存储文件的目录中打开文件:

nano Demo.txt

上面的命令将使用nano编辑器打开Demo.txt文件。要编辑文件,请移动光标并输入所需的文本,然后按CTRL + O键保存文件。考虑下面的nano文本编辑器图像:

CTRL + X键退出编辑器。您对文件所做的更改已成功保存。要验证更改,请执行以下cat命令:

cat Demo.txt

它将显示文件内容。考虑以下输出:

  • 使用Emacs编辑器编辑文件

Emacs编辑器还允许我们编辑文件。此外,它具有许多内置功能,例如Web浏览器,日历,终端等。它可以用作普通的文本编辑器。在Emacs编辑器中,我们可以编辑文件并通过导航栏保存它们。它不是基于Linux的系统中的内置编辑器,但是我们可以使用终端进行安装。

要安装emacs编辑器,请打开终端(按CTRL + ALT + T)并执行以下命令:

sudo apt-get install emacs

上面的命令将提示您输入管理密码,键入密码,然后按Enter键。考虑下面的终端快照:

它将验证安装过程,按“ y”键进行确认。安装过程将开始,需要一段时间才能完成安装过程。考虑以下输出:

Get:1 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 emacs25-common all 25.2+1-6 [13.1 MB]
Get:2 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 liblockfile-bin amd64 1.14-1.1 [11.9 kB]
Get:3 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 liblockfile1 amd64 1.14-1.1 [6,804 B]
Get:4 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 emacs25-bin-common amd64 25.2+1-6 [127 kB]
Get:5 http://in.archive.ubuntu.com/ubuntu bionic-updates/main amd64 libgif7 amd64 5.1.4-2ubuntu0.1 [30.9 kB]
Get:6 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 libotf0 amd64 0.9.13-3build1 [44.6 kB]
Get:7 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 m17n-db all 1.7.0-2 [1,239 kB]
Get:8 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 libm17n-0 amd64 1.7.0-3build1 [243 kB]
Get:9 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 emacs25 amd64 25.2+1-6 [3,468 kB]
Get:10 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 emacs all 47.0 [1,748 B]
Get:11 http://in.archive.ubuntu.com/ubuntu bionic/main amd64 emacs25-el all 25.2+1-6 [15.6 MB]
Fetched 33.9 MB in 3min 20s (170 kB/s)                                         
Selecting previously unselected package emacs25-common.
(Reading database ... 168266 files and directories currently installed.)
Preparing to unpack .../00-emacs25-common_25.2+1-6_all.deb ...
Unpacking emacs25-common (25.2+1-6) ...
Selecting previously unselected package liblockfile-bin.
Preparing to unpack .../01-liblockfile-bin_1.14-1.1_amd64.deb ...
Unpacking liblockfile-bin (1.14-1.1) ...
Selecting previously unselected package liblockfile1:amd64.
Preparing to unpack .../02-liblockfile1_1.14-1.1_amd64.deb ...
Unpacking liblockfile1:amd64 (1.14-1.1) ...
Selecting previously unselected package emacs25-bin-common.
Preparing to unpack .../03-emacs25-bin-common_25.2+1-6_amd64.deb ...
Unpacking emacs25-bin-common (25.2+1-6) ...
Selecting previously unselected package libgif7:amd64.
Preparing to unpack .../04-libgif7_5.1.4-2ubuntu0.1_amd64.deb ...
Unpacking libgif7:amd64 (5.1.4-2ubuntu0.1) ...
Selecting previously unselected package libotf0:amd64.
Preparing to unpack .../05-libotf0_0.9.13-3build1_amd64.deb ...
Unpacking libotf0:amd64 (0.9.13-3build1) ...
Selecting previously unselected package m17n-db.
Preparing to unpack .../06-m17n-db_1.7.0-2_all.deb ...
Unpacking m17n-db (1.7.0-2) ...
Selecting previously unselected package libm17n-0:amd64.
Preparing to unpack .../07-libm17n-0_1.7.0-3build1_amd64.deb ...
Unpacking libm17n-0:amd64 (1.7.0-3build1) ...
Selecting previously unselected package emacs25.
Preparing to unpack .../08-emacs25_25.2+1-6_amd64.deb ...
Unpacking emacs25 (25.2+1-6) ...
Selecting previously unselected package emacs.
Preparing to unpack .../09-emacs_47.0_all.deb ...
Unpacking emacs (47.0) ...
Selecting previously unselected package emacs25-el.
Preparing to unpack .../10-emacs25-el_25.2+1-6_all.deb ...
Unpacking emacs25-el (25.2+1-6) ...
Setting up liblockfile-bin (1.14-1.1) ...
Processing triggers for mime-support (3.60ubuntu1) ...
Processing triggers for desktop-file-utils (0.23-1ubuntu3.18.04.2) ...
Setting up libotf0:amd64 (0.9.13-3build1) ...
Processing triggers for install-info (6.5.0.dfsg.1-2) ...
Setting up liblockfile1:amd64 (1.14-1.1) ...
Setting up libgif7:amd64 (5.1.4-2ubuntu0.1) ...
Setting up m17n-db (1.7.0-2) ...
Setting up emacs25-common (25.2+1-6) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...
Setting up libm17n-0:amd64 (1.7.0-3build1) ...
Processing triggers for man-db (2.8.3-2ubuntu0.1) ...
Processing triggers for gnome-menus (3.13.3-11ubuntu1.1) ...
Processing triggers for hicolor-icon-theme (0.17-2) ...
Setting up emacs25-bin-common (25.2+1-6) ...
update-alternatives: using /usr/bin/ctags.emacs25 to provide /usr/bin/ctags (ctags) in auto mode
update-alternatives: using /usr/bin/ebrowse.emacs25 to provide /usr/bin/ebrowse (ebrowse) in auto mode
update-alternatives: using /usr/bin/emacsclient.emacs25 to provide /usr/bin/emacsclient (emacsclient) in auto mode
update-alternatives: using /usr/bin/etags.emacs25 to provide /usr/bin/etags (etags) in auto mode
Setting up emacs25-el (25.2+1-6) ...
Setting up emacs25 (25.2+1-6) ...
update-alternatives: using /usr/bin/emacs25-x to provide /usr/bin/emacs (emacs) in auto mode
Install emacsen-common for emacs25
emacsen-common: Handling install of emacsen flavor emacs25
Install dictionaries-common for emacs25
install/dictionaries-common: Byte-compiling for emacsen flavour emacs25
Setting up emacs (47.0) ...
Processing triggers for libc-bin (2.27-3ubuntu1) ...

上面的守护进程已在我们的系统上安装了emacs编辑器。现在,我们可以在Linux系统中探索emacs编辑器。

要使用emacs编辑器打开文件,请将目录更改为文件所在的路径,然后执行以下命令:

emacs Demo.txt

上面的命令将使用emacs编辑器打开文件。我们可以像传统的文本编辑器一样编辑文件。考虑下面的emacs编辑器图像:

编辑文件并使用导航栏上提供的保存选项保存。

要验证文件的更新,请按以下方式执行cat命令:

cat Demo.txt

考虑以下输出: