1.搜索
在vi和vim中如果打开一个很大的文件,不容易找到对应的内容,可以使用自带的搜索关键字进行搜索定位:
在vi和vim界面中输入:"/"(反斜杠),之后会出现一个输入框让你输入,当你输入的关键字在文件中存在就会以高亮的形式显示出来,之后按 回车 就确定定位到当前高亮位置,如果不是你要找的,则可以按:“n”,意即寻找下一个输入关键字的内容。
- vim恢复以及乱码问题
(1) 在vi和vim中如果不小心误删除了一些东西,想要恢复怎么办?
首先要退出编辑状态,即按Esc键,之后再按 u 撤销之前的修改的内容。
(2) 在用vi或vim打开一个文件的时候,如果有些地方出现一些特殊符号或是乱码,可以通过以下命令尝试:
vim -b mytest.php(其中-b一般是用来查看对应的二进制文件的)
- 管道命令,即竖杠–>’|’
上面的意思是:将查询出来的内容交给管道后面的命令装饰之后再展示出来
例如:cat install.log | more (more的意思是将一屏放不下的内容以分页的形式显示)
ls -l /etc | more
如果想看上一页的内容,可以通过:Shift + PageUp 来查看
管道配合grep(过滤)可以达到很好用的组合例如:
cat -n hello.txt | grep “hello” (查看hello.txt文件内容,并过滤出来带有hello的内容) , -n 表示显示出来第几行的内容
- find 搜寻文件或目录
find /home -name hello* (查找home目录下的文件名或目录为hello的)
find / -name h?m* (在跟目录下查找h开头第二个字符是任意的,第三个是m,后面的是任意的字符)
find / -size +1000000k (表示在根目录下查询文件大于1000000K的文件)
查找目录下的所有文件中是否含有某个字符串,并且只打印出文件名
find .|xargs grep -ri “IBM” -l
1
5. 字符串替换命令
?/well/good/ 替换当前行第一个 well 为 good
?/well/good/g 替换当前行所有 well 为 good
:n,
s
/
w
e
l
l
/
g
o
o
d
/
替
换
第
n
行
开
始
到
最
后
一
行
中
每
一
行
的
第
一
个
w
e
l
l
为
g
o
o
d
:
n
,
s/well/good/ 替换第 n 行开始到最后一行中每一行的第一个 well 为 good :n,
s/well/good/替换第n行开始到最后一行中每一行的第一个well为good :n,s/well/good/g 替换第 n 行开始到最后一行中每一行所有 well 为 good
n 为数字,若 n 为 .,表示从当前行开始到最后一行
:%s/well/good/ (等同于 :g/well/s//good/) 替换每一行的第一个 well 为 good
:%s/well/good/g (等同于 :g/well/s//good/g) 替换每一行中所有 well 为 good
特殊符号转义:可以使用 # 作为分隔符,此时中间出现的 / 不会作为分隔符
?#well/#good/# 替换当前行第一个 well/ 为 good/
:%s#/usr/bin#/bin#g 可以把文件中所有路径/usr/bin换成/bin
6. 重定向命令
ls -l /etc/ 希望
s -l /etc > /home/myback.txt (覆盖重定向) 把显示的结果覆盖到/home/myback.txt中去