在vim里,应该怎么来执行 shell 下命令?

在vim里,应该怎么来执行 shell 下命令?,第1张

vim中执行shell命令,有以下几种形式
1):!command
不退出vim,并执行shell命令command,将命令输出显示在vim的命令区域,不会改变当前编辑的文件的内容
例如
:!ls -l
特别的可以运行:!bash来启动一个bash shell并执行命令,不需要退出vim
2):r !command
将shell命令command的结果插入到当前行的下一行
例如
:r !date,读取系统时间并插入到当前行的下一行。
3):起始行号,结束行号 !command
将起始行号和结束行号指定的范围中的内容输入到shell命令command处理,并将处理结果替换起始行号和结束行号指定的范围中的内容
例如
:62,72 !sort,将62行到72行的内容进行排序
可以只指定起始行,例如:62 !tr [a-z] [A-Z],将62行的小写字母转为大写字母
当前光标所在行,除可以指定行号外,也可以用表示,例如: !tr [a-z] [A-Z],将当前行的小写转为大写
4):起始行号,结束行号 w !command
将起始行号和结束行号所指定的范围的内容作为命令command的输入。不会改变当前编辑的文件的内容
例如
:62,72 w !sort,将62行到72行的内容进行排序,但排序的结果并不会直接输出到当前编辑的文件中,而是显示在vim敲命令的区域
特殊的可以下面这么用
:62 w !bash,将会把第62行的内容作为bash命令来执行并显示结果,而且不会改变当前编辑的文件的内容
同样的: w !bash,将当前行的内容作为bash命令来执行
例如52行内容为ls -l
那么输入:52 w !bash就跟执行!ls -l是一样的效果,如果你用的shell是bash shell
如果输入的是:52 !bash,那么会把第52行的内容也就是ls -l作为命令执行,同时命令的输出结果会替换第52行的内容,注意其中的区别。
楼主如果对Linux系统感兴趣,想学习更多Linux系统知识,可以百度《Linux就该这么学》,不错的一本Linux入门教程。

/etc/profile 默认权限为 -rw-r--r--
即只有root用户可以修改,其它用户只能读取。
要修改/etc/profile,先要使用root用户登录系统,再使用文本编辑软件打开/etc/profile进行编辑,最后保存退出即可。
关于文本编辑软件:
字符界面下使用vi或vim进行编辑,命令形式:vi /etc/profile
图形界面下可用gedit进行编辑,命令形式:gedit /etc/profile

VIM是有相应的模式的,要进入相应的模式都有相应的快捷键的,比如你要编辑一个代码,就先输入一个 i 进入插入模式,然后才可以输入字符,具体相关的可以去网上搜索一个VIM命令大全,我有些简单的给你看看。
i
#按一下i键,下端显示 --INSERT--
#插入命令,在vim中可能任意字符都有作用
3
Esc
#退出i(插入)命令进行其它命令使用
4
:r filename
#读入一个文件内容,并写入到当前编辑器中
5
:w newfilename
#将该编辑器中的内容写入到一个新文件中
6
:w
#在编辑的过程中保存文件,相当于word中的ctrl+s
7
:! command
暂时离开 vi 到指令列模式下执行 command 的显示结果!例如
:!ls
#在编辑过程中执行shell命令ls
8
:sh
#进入shell命令行,执行完命令后ctrl+d退出重新进入vim编辑继续编辑
在shell命令下,执行ctral+l完成清屏
9
:wq
#保存文件并退出
10
ZZ
#保存文件并退出,同上一个命令,注意大写
11
:q!
#强制退出,不保存
12
:set number或者:set nu
#使编辑中的文件显示行号
13
:set nonumber或者:set nonu
#与上一条命令相反,不显示行号
14
:help i
#查看插入命令帮助
15
u
#撤消上一步 *** 作
16
/Fedora
#查找Fedora字符
17
:s /Fedora/Redhat
#将Fedora字符替换为Redhat(只替换在光标所在的行)
18
dw
#删除单词
dd
#删除行
19
o
#打开空白一行
20
vim + filename
#进行文件最后一行进行编辑
21
vim +n filename
#进入文件第n行进行编辑
22
:1,s/redhat/fedora
#号表示当前行,即光标所在行
#将第1行到当前行()第一次出现的redhat字符代替为fedora
23
:1,s/redhat/fedora/g
#将第1行到当前行()所有出现的redhat字符代替为fedora,g
全局标志
24
:1,$s/redhat/fedora/g
#$表示最后一行
#将第1行到最后一行所有出现的redhat字符代替为fedora
25
:%s/redhat/fedora/g
#同上一个命令
26
:%s/\/fedora/g
#将第1行到最后一行所有出现的redhat字代替为fedora
#字,而不是字符
27
:f
#显示文件内容,状态等等
#同ctrl+g命令
28
:e!
#当前文件,返回到上次保存
:e file
#切换编辑文件
29
:n
#当编辑时有多个文件(比如vim file1 file2)时切换到下一个文件,与:e file
结合使用

vim编辑命令?以下方式可以试试

首先启动vim:

然后在命令行窗口中输入以下命令即可:

(1)Vim 直接启动vim。

(2)Vim filename 打开vim并创建名为filename的文件。

选择文件命令。

(1)首先打开单个文件 vim file。

(2)同时打开多个文件 vime file1 file2 file3。

Vim能够得到广大厂商与众多用户的认可,原因就是在Vim编辑器中内设有的三种模式——命令模式、末行模式和编辑模式,分别又支持多种不同的命令快捷键组合,很大的提高了工作效率,用习惯后会觉得非常的顺手。所以要想在文本 *** 作时更加高效率,就必须先搞清Vim编辑器的三种模式的 *** 作不同与切换方法

命令模式:控制光标移动,可对文本进行删除、复制、粘贴和查找等工作。

输入模式:正常的文本录入。

末行模式:保存、退出与设置编辑环境。

当咱们每次运行vim编辑器后都默认会是“命令模式”,需要先进入到“输入模式”后再进行编写文档的工作,而每次编辑完成需先返回到“命令模式”后再进入“末行模式”中执行对文本的保存或退出 *** 作,而不能直接从“输入模式”切换到“末行模式”。vim编辑器内设支持的命令有成百上千个用法,为了能够帮助读者更快的掌握vim编辑器,我分别总结了在命令模式和末行模式中最常用的一些快捷键命令,如下表所示:

命令    作用    
dd    删除(剪切)光标所在整行。    
5dd    删除(剪切)从光标处开始的5行。    
yy    复制光标所在整行。    
5yy    复制从光标处开始的5行。    
n    显示搜索命令定位到的下一个字符串。    
N    显示搜索命令定位到的上一个字符串。    
u    撤销上一步的 *** 作    
p    将之前删除(dd)或复制(yy)过的数据粘贴到光标后。    
字符串    在文本中从下至上搜索该字符串。    
/字符串    在文本中从上至下搜索该字符串。

末行模式用于保存或退出文件,能够设置vim编辑器的整体使用环境,让用户执行外部Linux命令或跳转到特定的行数。末行模式切换的方式就是在命令模式中输入一个冒号就可以的,具体的命令如下表所示:

命令    作用    
:w    保存    
:q    退出    
:q!    强制退出(放弃对文本的修改内容)    
:wq!    强制保存退出    
:set nu    显示行号    
:set nonu    不显示行号    
:命令    执行该命令    
:整数    跳转到该行    
:s/one/two    将当前光标所在行的第一个one替换成two    
:s/one/two/g    将当前光标所在行的所有one替换成two    
:%s/one/two/g    将全文中的所有one替换成two


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/13375858.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-07-24
下一篇 2023-07-24

发表评论

登录后才能评论

评论列表(0条)

保存