扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
GNU nano是Unix系统下一款常用的文本编辑器,以简单易用著称。与之相比,功能更强大的Vi和Emacs编辑器,学习曲线比nano陡峭很多。由于nano对于一般的文本编辑来说已经足够,所以我想简单介绍一下,以便于更好入门。
创新互联建站客户idc服务中心,提供绵阳电信机房机柜租用、成都服务器、成都主机托管、成都双线服务器等业务的一站式服务。通过各地的服务中心,我们向成都用户提供优质廉价的产品以及开放、透明、稳定、高性价比的服务,资深网络工程师在机房提供7*24小时标准级技术保障。
在Shell中输入下面命令,就可以启动nano:
nano test.txt
命令nano后面跟着想要修改的文件名。如果当前文件夹下存在名为test.txt的文件时,改命令将打开这个文件。否则,nano会创建一个新文件。随后,Shell会进入到nano的编辑界面。nano的编辑方式和常用的记事本工具类似,都是“所见即所得”。用上下左右键,就可以把光标移动到想要编辑的位置,然后输入或删除即可。
完成之后,你可以按Ctrl+O键来保存文件。nano询问你是否保存缓存中的修改:
Save modified buffer (ANSWERING "No" WILL DESTROY CHANGES) ?
输入Y并,改动将存入文件。此时nano会让你再次确认存入文件的文件名:
File Name to Write: test.txt
回车确认后,修订将存入到test.txt文件。
随后,按Ctrl+X可以退出nano,重新回到Shell的命令行。
nano中有很多功能键。比如上面保持文件用的Ctrl+O,就是一个功能键。nano界面的最下方会给出功能键的提示:
在提示中,^表示Ctrl键,M表示Alt键。因此,^G表示的就是同时暗下Ctrl键和G键。
下面是一些常用的功能键:
M-\ 把光标移动到文本开始 M-/ 把光标移动到文本结尾 M-A 开始选择文本块 ^K 剪切所在行或选定的文本块 M-6 复制所在行或选定的文本块 ^U 粘贴
^G 帮助
nano可以支持语法高亮,从而更好的服务于编程。为了使用语法高亮,首先要安装语法高亮文件:
git clone https://github.com/nanorc/nanorc.gitcd nanorc/make install
安装完成后,可以看到~/.nano/syntax下多了很多语法高亮文件:
ALL.nanorc go.nanorc markdown.nanorc ruby.nanorc awk.nanorc html.nanorc mpdconf.nanorc sed.nanorc c.nanorc ini.nanorc nanorc.nanorc shell.nanorc cmake.nanorc inputrc.nanorc nginx.nanorc sql.nanorc coffeescript.nanorc java.nanorc patch.nanorc systemd.nanorc colortest.nanorc javascript.nanorc peg.nanorc tex.nanorc csharp.nanorc json.nanorc php.nanorc vala.nanorc css.nanorc keymap.nanorc pkg-config.nanorc vi.nanorc cython.nanorc kickstart.nanorc pkgbuild.nanorc xml.nanorc default.nanorc ledger.nanorc po.nanorc xresources.nanorc dot.nanorc lisp.nanorc privoxy.nanorc yaml.nanorc email.nanorc lua.nanorc properties.nanorc yum.nanorc git.nanorc makefile.nanorc python.nanorc glsl.nanorc man.nanorc rpmspec.nanorc
将语法高亮文件添加到~/.nanorc中,就能让nano启动对相应语言的语法高亮支持,例如:
include ~/.nano/syntax/c.nanorc include ~/.nano/syntax/css.nanorc include ~/.nano/syntax/java.nanorc include ~/.nano/syntax/makefile.nanorc include ~/.nano/syntax/php.nanorc include ~/.nano/syntax/python.nanorc include ~/.nano/syntax/ruby.nanorc include ~/.nano/syntax/tex.nanorc include ~/.nano/syntax/xml.nanorc
如果有需要,还可以把更多的语法高亮文件加入到.nanorc中。这时再打开获得支持的程序文本时,就可以看到语法高亮的效果。下图中用nano打开了一段Python程序:
在nano中,使用M-Y功能键可以开关语法高亮功能。
用nano编辑文件并保存后,当前目录下就会出现一个新的文件,文件名就是我们使用时的文件名。用下面命令,可以显示Shell当前目录下的文件:
$ls
Linux用文件的形式存储数据。在树莓派中,文件存储于那张SD卡上。除了用户编辑生成的文本,数据还可能是Linux系统中的程序或配置文件。在Unix的哲学下,文件是数据存储的唯一形式,就连硬件也会虚拟成一个文件。既然文件有这么重要的地位,那么Linux中自然少不了用于操作文件的命令,比如删除文件的rm:
$rm test.txt
文件存储的位置,称为文件所在的目录(directory)。刚才用nano保存文件后,由于没有说明目录,文件就保存在当前目录下。我们可以用下面命令来查询Shell所在的当前目录:
$pwd
显示的是:
/home/pi
所有目录都可以追溯到一个根源,即根目录(root directory)。根目录下有一个home目录,home下有一个pi目录。我们的当前工作目录,就是这个pi目录。
一个目录下的文件不能重名。因此,如果在/home/pi这样的目录下加上文件名,就唯一确定了这个文件。这称为文件的路径(path)。比如:
/home/pi/test.txt
本文介绍了Linux下一款简单易用的文本编辑器nano和常用的文件命令。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流