关于vim:在vi中执行查找替换确认时如何返回上一步?
在vim中执行查找替换确认时,如果需要返回一步,可以使用u
命令撤销上一步操作。下面是详细的攻略和两个示例说明:
步骤
-
执行查找替换命令:在vim中,可以使用
:%s/old/new/gc
命令执行查找替换操作。其中,%
表示对整个文件进行操作,s
表示替换操作,old
表示要替换字符串,new
表示替换后的字符串,g
表示全局替换,c
表示确认每个替换。 -
确认替换:当vim执行查找替换命令时,会逐个显示要替换的字符串,并提示用户确认是否替换。如果要替换,可以输入
`,如果不替换,可以输入
n。如果需要返回上一步,可以输入
u`撤销上一步操作。 -
继续替换:如果确认替换,可以输入
y
继续替换下一个字符串。如果不替换,可以输入n
跳过当前字符串。 -
完成替换:当vim替换完所有要替换的字符串后,会显示替换的结果。如果需要保存文件,可以输入
:w保存文件,如果不保存,可以输入
:q!`退出vim。
示例一:查找替换并返回上一步
设我们有一个文件test
,内容如下:
hello world
hello vim
hello vi
我们想要将文件中的所有hello
替换为hi
,并在每个替换前。我们可以使用以下命令:
:%s/hello/hi/gc
执行命令后,vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要返回上一步,可以输入u
撤销上一步操作。下面是示例操作:
-
执行命令:输入
:%s/hello/hi/gc
并按下回车键。 -
确认替换:vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要返回上一步,可以输入
u
撤销上一步操作。
replace hello with hi (y/n/a/q/l/^E/^Y)?
- 返回上一步:输入
u
撤销上一步操作。
replace hello with hi (y/n/a/q/l/^EY)?
- 继续替换:输入
y
继续替换下一个字符串。
replace hello with hi (y/n/a/q/l/^E/^Y)? y
- 确认替换:vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要返回上一步,可以输入
u
撤销上一步操作。
replace hello with hi (y/n/a/q/l/^E/^Y)?
- 继续替换:输入
y
继续替换下一个字符串。
replace hello with hi (y/n/a/q/l/^E/^Y)? y
- 确认替换:vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要返回上一步,可以输入
u
撤销上一步。
replace hello with hi (y/n/a/q/l/^E/^Y)?
- 返回上一步:输入
u
撤销上一步操作。
replace hello with hi (y/n/a/q/l/^E/^Y)?
- 跳过当前字符串:输入
n
跳过当前字符串。
replace hello with hi (y/n/a/q/l/^E/^Y)? n
- 确认替换:vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要返回上一步可以输入
u
撤销上一步操作。
replace hello with hi (y/n/a/q/l/^E/^Y)?
- 继续替换:输入
y
继续替换下一个字符串。
replace hello with hi (y/n/a/q/l/^E/^Y)? y
- 确认替换:vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要返回上一步,可以输入
u
撤销上一步操作。
replace hello with hi (y/n/a/q/l/^E/^Y)?
- 继续替换:输入
y
继续替换下一个字符串。
replace hello with hi (y/n/a/q/l/^E/^Y)? y
- 完成替换:vim替换完所有要替换的字符串后,会显示替换的结果。
3 substitutions on 3 lines
- 保存文件:输入
:w
保存文件。
:w
- 退出vim:输入
:q!
退出vim。
:q!
示例二:查找替换并取消操作
假设我们有一个文件test.txt
,内容如下:
hello world
hello vim
hello vi
我们想要将文件中的所有hello
替换为hi
,并在每个替换前确认。我们换了第一个字符串后,发现不想继续替换了,需要取消操作。我们可以使用以下命令:
:%s/hello/hi/gc
执行命令后,vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要取消操作,可以输入q
退出替换操作。下面是示例操作:
-
执行命令:
:%s/hello/hi/gc
并按下回车键。 -
确认替换:vim会逐个显示要替换的字符串,并提示用户确认是否替换。如果需要取消操作,可以输入
q
退出替换操作。
replace hello with hi (y/n/a/q/l/^E/^Y)?
- 取消操作:输入
q
退出替换操作。
replace hello with hi (y/n/a/l/^E/^Y)? q
- 退出vim:输入
:q!
退出vim。
:q!
总结
在vim中执行查找替换确认时,如果需要返回上一步,可以使用u
命令撤销上一步操作。如果需要取消操作,q
退出替换。在实际使用中,可以根据需要灵活运用这些命令,提高工作效率。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:关于vim:在vi中执行查找替换确认时如何返回上一步? - Python技术站