Linux创建与编辑视图

本博客将会详细讲解如何在Linux中如何编辑配置文件

输出重定向

对于一台设备而言,存在着两种设备,分别负责输入与输出:
显示器(输出设备>) 与 键盘(输入设备<)
对于Linux系统而言,我们可以使用 echo 命令在终端上输出一些我们想要的内容
image.png
即使是命令错误,Linux也会输出错误信息到终端上
Linux创建与编辑视图_第1张图片
对于这两种情况,我们分别可以理解为标准输出设备/0标准错误输出/2
在未来的一些比较专业的需求中,也许我们需要保存一些数据,或者是日志错误信息等
这时候我们就需要使用到输出中的输出重定向
输出重定向的标识符为>
一般是下面的这种使用方式
Linux创建与编辑视图_第2张图片
可以看到,echo原本会将haha输出到终端上,现经过>输出重定向后到一个文件中
这里便多创造了一个文件,cat显示该文件内容,发现是原本该输出在终端的haha
这便是输出重定向的作用
Linux创建与编辑视图_第3张图片

追加重定向

但是假如我们想要重定向其他信息到文件中,继续使用>会发现原来的信息被覆盖了
这时候我们就需要使用到追加重定向>>
Linux创建与编辑视图_第4张图片
这里我们使用>>将I Love Linux!追加重定向到1.txt文件中
cat显示该文件内容,可以看到,在原有的hehe基础上,换行添加了I Love Linux!的数据
Linux创建与编辑视图_第5张图片

错误重定向

如果我们这里直接使用>>追加重定向到一个新的文件中,会发现与>效果一致
所以与输出重定向不同的是,追加重定向并不会将原来的信息覆盖
而是在原有的基础上继续添加数据
我们也可以使用错误重定向2>将错误信息给重定向到文件中
Linux创建与编辑视图_第6张图片
由于这里使用了大写的Echo,终端在正常情况下会报错
但是我们使用2>错误重定向将错误信息输出在3.txt文件中
使用cat显示该文件内容,可以发现错误信息被输出了出来
这个方法可以运用在未来需要导出错误报告数据的生产环境中


构造管道

什么是管道?
管道拥有两个参数:命令1 | 命令2(|即为管道)
他的作用是将命令1的结果传递给命令2,作为命令2的第一个参数继续执行
我们下面举个例子来观察一下现象:
image.png

bc命令是一个用于执行数学计算的命令行工具。它支持各种数学运算,包括整数和小数的加减乘除,取余数,指数运算等

这里我们使用echo 10-5 | bc的命令,最后在终端上输出5
过程是首先echo将10-5作为输出值,也就是返回值,通过管道传递给bc
bc接收到10-5作为参数,随后将其计算出值为5,输出在终端上
当然,这只是一个很简单的例子,真正在生产中往往还有比这更加复杂的使用情景
除此之外,|管道还有一个非常强大的功能:tee
tee是三通,下面使用一个例子来方便理解:
Linux创建与编辑视图_第7张图片
这里我们使用echo 233666 | tee 4.txt的命令来进行操作
可以看到,命令执行完毕之后首先在终端上输出了233666
随后使用ls查看当前文件可以发现多了一个文件4.txt
使用cat显示4.txt文件内容,可以发现4.txt的文件内容是233666
这便是三通的用法
首先将233666输出至终端上,并将输出值保留,存放至4.txt中
当然,tee还有非常强大的一个选项 -a
他的使用效果如下:
Linux创建与编辑视图_第8张图片
我们这里使用了echo 666233 | tee -a 4.txt的命令来进行操作
与上面一样,首先是在终端中输出了666233的内容
随后显示4.txt的文件却发现
666233被追加在了233666的后面
这便是tee -a的使用效果:追加(等同于>>)
这个方法一般使用在权限操作文件的生产中,在未来会提及


vim编辑器

Vim是一个在Linux和其他Unix操作系统上广泛使用的文本编辑器
它包含了很多高级的特性和功能
如语法高亮、智能缩进、宏、光标位置记录、多级撤销、拼写检查和补全等
我们一般在Linux进行文件编辑修改一般都是使用vim编辑器
在Linux中,我们可以使用vim + [文件名] 或者 vi + [文件名]
使用vim编辑器打开一个文件进行编辑操作(vi是vim的别名)

三种环境

vim编辑器中有三种模式:命令模式编辑模式行底模式

  • 命令模式:进入vim默认是命令模式,在此模式下无法编辑,需要按i进入编辑模式
  • 编辑模式:在此模式下可以进行文本编辑,按esc键退出编辑模式回到命令模式
  • 行底模式:想要进入此模式,需要在命令模式下输入’:’
    下面给大家举一个实例来观察一下:
    image.png
    首先我们创建一个名为test.txt的文件
    随后使用vim test.txt命令在vim中打开此文件
    Linux创建与编辑视图_第9张图片
    进入之后显示如图上
    现在我们所在的是命令模式
    我们需要在此模式下按键盘i键进入编辑模式
    Linux创建与编辑视图_第10张图片
    进入编辑模式后如图所示,我们当前便可以在此页面输入或修改我们想要的信息
    Linux创建与编辑视图_第11张图片
    输入结束后我们需要保存并退出vim编辑器,在编辑模式下按esc退出回到命令模式
    Linux创建与编辑视图_第12张图片
    随后在此页面输出键盘组合键Shitf + ;(也就是输入’:')进入行底模式
    在行底模式输入w(保存)q(退出)即可保存并退出vim编辑器
    Linux创建与编辑视图_第13张图片
    推出之后我们再使用cat test.txt命令来查看文件内容
    Linux创建与编辑视图_第14张图片
    可以看到,文件已经被保存了,这就是vim的最简单的使用方法
    除了上面三种模式之外,下面还有两种模式需要大家了解:
  • 视图模式:在命令模式下使用v进入(选择单个单词)使用V进入(选择一行数据)
  • 块模式:在命令模式下用键盘组合键Ctrl+v进入

快捷键

  • 命令模式
    键盘'h'(光标左移)
    键盘'l'(光标右移)
    键盘'j'(光标下移)
    键盘'k'(光标上移)
    键盘'w'(单词后移)
    键盘'b'(单词前移)
    键盘'gg'(光标移到第一行)
    键盘'G'(光标移到最后一行)
    键盘'y'(复制)
    键盘'yw'(复制一个单词)
    键盘'yy'(复制一行)
    键盘'p'(粘贴在光标下面)
    键盘'P'(粘贴在光标上面)
    键盘'x'(删除光标所在字符)
    键盘'X'(删除光标前的字符)
    键盘'u' (撤销)
    键盘'dw'(删除一个单词)
    键盘'dd'(删除一行)
    键盘'd^'(删除到行首)
    键盘'd$'(删除到行尾)
    键盘'Ctrl + r'(撤销撤销操作)
  • 编辑模式
    键盘'I'(行首插入)
    键盘'a'(光标前插入)
    键盘'A'(行末插入)
    键盘'o'(光标下开一行)
    键盘'O'(光标上开一行)
    键盘's'(删除光标所在字符,并进入命令模式)
    键盘'S'(删除光标所在行,并进入命令模式)
  • 行底模式
    set nu显示行号
    set nonu取消显示行号
    w保存文件
    w /newfile另存为其他文件
    q未保存退出
    q!放弃对内容修改并强制退出
    s/old/new 将当前行中所查找到的第一个old字符替换为new字符
    s/old/new/g 将当前行中查找到的所有old字符全部替换为new字符
    #,#s/old/new/g 在行号"#,#"范围内查找到的所有old字符全部替换为new字符
    %s/old/new/g 将整个文件中查找到的所有old字符全部替换成new字符
    #,$s/old/new/g 将#行到末行中查找到的所有old字符全部替换成new字符

你可能感兴趣的:(linux)