linux vim搜索关键字

嘿,我记得早在 2 02 2 年,我就搭建了一个 Linux 系统,里面安装了 Vim。
那东西确实很先进。
当时我就想找一个关键词,但是很迷茫。
我应该怎么办? 后来想通了,得先进入Vim编辑器,在终端输入vim并添加文件名,比如vim example.txt,然后回车。

进入后,你必须使用命令行并先按Esc键以确保你不是处于插入模式。
当时我的手在颤抖,按了好几次。
然后,我尝试使用 /,输入关键字,例如 /hello,然后按 Enter。
嘿嘿,我真的找到了。
突出显示该关键字。
要查找下一个,请按 n 键。
要查找上一个,请按 N 键。
这个操作当时对我来说有点难以反应,但慢慢就习惯了。

后来,我尝试反向搜索,使用“?”,也输入关键字,例如“?world”,然后按 Enter。
嘿嘿,这次是从后往前找的,有意思。
不过这个逻辑,一开始我觉得有些极端,有悖常理,但后来想想,还蛮有趣的。

我用 example.txt 文件尝试过。
我先正向搜索hello,然后反向搜索world。
我按n和N来回切换。
非常有趣。
但请注意,Vim 搜索区分大小写。
我必须设置它并输入:setignorecase,以便它不区分大小写。
后来玩了玩正则表达式,还蛮有趣的。
必须加v或者输入:setmagic,然后就可以用正则表达式搜索了。

当时很着急,现在想来,还蛮有趣的。
嗯,Vim 需要慢慢学习和理解。

Linux如何在vi里搜索关键字?

哦,是的,我经常使用这个。
你是对的。
上次我在 Linux 系统上编写脚本时,我正在寻找这样的文件。
这时我输入/,然后输入“错误”。
当我按下回车键时,它立即跳到第一位,非常方便。

如果你想查找下一个“错误”,只需按n,它就会自动移至下一个匹配的错误。
如果按 N,则会从后向前反向搜索。
我已经习惯使用这个键盘快捷键了,而且非常有效。
只要记住这一点,你用得越多就会习惯它。

linux 全局搜索关键字 linux全局搜索文件的命令

说白了,Linux就是靠grep来全局查找文件内容的,和find配合使用可以达到事半功倍的效果。

先说最重要的一点:grep自带递归搜索功能,但是效率会随着目录的深度而降低。
去年我们跑的一个项目中,有一个树形目录,有3 万行代码。
纯-r模式直接导致终端崩溃,所以我们不得不使用find+grep组合来修复它。
还有一点需要注意的是严格的大小写匹配。
例如,grep 'error' 会漏掉 'Error',所以你必须使用 grep -i 来忽略大小写。
还有另一个关键细节。
grep 的 -w 选项不检查字符串中的空格,而是匹配整个单词边界。
例如,grep -w 'foo' 将匹配 'foo bar' 但不匹配 'foobar'。

一开始我以为find-exec可以直接传递变量,但后来发现我必须使用{}代替文件名并将其用引号括起来以避免爆炸。
说实话,还是挺复杂的,但是掌握了它,可以省去很多麻烦。

提醒:使用find-exec时,不要在命令中直接写grep,例如写find。
-name“.log”-exec grep“错误”notexist;。
这会导致错误。
你必须使用查找。
-name ".log" -exec grep "error" {} \;。
请记住,末尾的 \ 是行继续符。