linux vi 查找,vi模式下怎么进行查找
各位老铁们好,相信很多人对linux vi 查找都不是特别的了解,因此呢,今天就来为大家分享下关于linux vi 查找以及vi模式下怎么进行查找的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!
linux查看文件内容命令vimlinux查看文件内容命令
linux系统怎么在文件夹里搜索文件?
方法1:使用find命令在Linux中搜索文件和文件夹
find命令被广泛使用,并且是在Linux中搜索文件和文件夹的著名命令。它搜索当前目录中的给定文件,并根据搜索条件递归遍历其子目录。
它允许用户根据大小、名称、所有者、组、类型、权限、日期和其他条件执行所有类型的文件搜索。
运行以下命令以在系统中查找给定文件。
#find/-inamesshd_config
/etc/ssh/sshd_config
运行以下命令以查找系统中的给定文件夹。要在Linux中搜索文件夹,我们需要使用-type参数。
#find/-typed-inamessh
/usr/lib/ssh
/usr/lib/go/src/cmd/vendor/golang.org/x/crypto/ssh
/usr/lib/go/pkg/linux_amd64/cmd/vendor/golang.org/x/crypto/ssh
/etc/ssh
使用通配符搜索系统上的所有文件。我们将搜索系统中所有以.config为扩展名的文件。
#find/-name*.config
/usr/lib/mono/gac/avahi-sharp/1.0.0.0__4d116c78973743f5/avahi-sharp.dll.config
/usr/lib/mono/gac/avahi-ui-sharp/0.0.0.0__4d116c78973743f5/avahi-ui-sharp.dll.config
/usr/lib/python2.7/config/Setup.config
/usr/share/git/mw-to-git/t/test.config
/var/lib/lightdm/.config
/home/daygeek/.config
/root/.config
/etc/skel/.config
使用以下命令格式在系统中查找空文件和文件夹。
#find/-empty
使用以下命令组合查找Linux上包含特定文本的所有文件。
#find/-typef-execgrepPort22{};-print
#find/-typef-print|xargsgrepPort22
#find/-typef|xargsgrepPort22
#find/-typef-execgrep-HPort22{};
方法2:使用locate命令在Linux中搜索文件和文件夹
locate命令比find命令运行得更快,因为它使用updatedb数据库,而find命令在真实系统中搜索。
它使用数据库而不是搜索单个目录路径来获取给定文件。
locate命令未在大多数发行版中预安装,因此,请使用你的包管理器进行安装。
数据库通过cron任务定期更新,但我们可以通过运行以下命令手动更新它。
$sudoupdatedb
只需运行以下命令即可列出给定的文件或文件夹。在locate命令中不需要指定特定选项来打印文件或文件夹。
在系统中搜索ssh文件夹。
#locate--basenamessh
/etc/ssh
/usr/bin/ssh
/usr/lib/ssh
/usr/lib/go/pkg/linux_amd64/cmd/vendor/golang.org/x/crypto/ssh
/usr/lib/go/src/cmd/go/testdata/failssh/ssh
/usr/lib/go/src/cmd/vendor/golang.org/x/crypto/ssh
在系统中搜索ssh_config文件。
#locate--basenamesshd_config
/etc/ssh/sshd_config
方法3:在Linux中搜索文件使用which命令
which返回在终端输入命令时执行的可执行文件的完整路径。
当你想要为可执行文件创建桌面快捷方式或符号链接时,它非常有用。
which命令搜索当前用户而不是所有用户的$PATH环境变量中列出的目录。我的意思是,当你登录自己的帐户时,你无法搜索root用户文件或目录。
运行以下命令以打印vim可执行文件的完整路径。
#whichvi
/usr/bin/vi
或者,它允许用户一次执行多个文件搜索。
#which-avisudo
/usr/bin/vi
/bin/vi
/usr/bin/sudo
/bin/sudo
方法4:使用whereis命令在Linux中搜索文件
whereis命令用于搜索给定命令的二进制、源码和手册页文件
linux如何查看隐藏文件?
查看隐藏文件的方法有很多,列举其中的几个常用的方法:
ll-a
显示当前目录所有文件、文件夹的详细信息,包括权限、大小、用户、组等
ls-a
显示当前目录下所有文件、文件夹的简略信息,只有文件(夹)的名称,以"."开头的都是隐藏文件。
l.(这是个命令别名,实际命令为ls-d.*--color=auto)
显示当前目录下的所有隐藏文件,只显示名称,不显示详情
linux中ls命令可以查看文本文件内容吗?
linux系统中,ls命令列出文件和目录名字,容量多少,创建日期,读写权限等文件和目录属性,不能查看文件内容。
如何查看linux下的用户文件?
输入cd/home命令,进入到home目录中,在输入ll命令,即可查看普通用户目录
linux下查看文件类型的三种方法?
1、首先我们以管理员身份(root)登录系统,在系统界面窗口处,输入命令mount,可以看到/dev/sda1on/typeext3表示sda1的文件系统是ext3的类型。
2、第二种方式,我们输入命令df-lhT命令,可以在返回的结果内查看到,/dev/sda1ext3表示文件类型为ext3类型。
3、第三种方式,我们输入命令file-s/dev/sda1可以在返回的结果内发现,文件类型为ext3类型。
4、可以对系统内/etc/fstab文件。进行查看。我们执行命令cat/etc/fstab。可以在文件内容内找到文件类型为ext3类型。
Linux如何在vi里搜索关键字
在Linux的vi编辑器中,搜索关键字的操作相当直接。首先,当你处于命令模式,只需敲击斜杠(/),这时状态栏的底部会出现一个提示符。接着,输入你要查找的关键字,按下回车,vi会立即开始搜索。若要继续查找下一个匹配项,只需输入字符"n"。
Linux,作为一款开源的类Unix操作系统,设计初衷是提供多用户、多任务、支持多线程和多CPU的功能。它兼容并运行广泛的UNIX工具、应用软件和网络协议,适应了32位和64位硬件环境。Linux强调网络的核心地位,是高效稳定的网络操作系统,它的普及范围广泛,包括手机、平板、路由器、游戏机、台式机甚至大型和超级计算机。
虽然Linux最初仅指代其内核,但随着时间的推移,人们习惯性地将使用了GNU工程的各种工具和数据库的整个操作系统也称为Linux。因此,当我们提及Linux时,通常指的是这个包含内核和相关软件的完整操作系统生态系统。
Linux中vi的查找、替换、删除操作
vi查找替换命令详解
一、查找查找命令/patternEnter:向下查找pattern匹配字符串?patternEnter:向上查找pattern匹配字符串使用了查找命令之后,使用如下两个键快速查找:n:按照同一方向继续查找N:按照反方向查找字符串匹配pattern是需要匹配的字符串,例如:
1:/abcEnter #查找abc2:/ abc Enter #查找abc单词(注意前后的空格)
除此之外,pattern还可以使用一些特殊字符,包括(/、^、$、*、.),其中前三个这两个是vi与vim通用的,“/”为转义字符。
1:/^abcEnter #查找以abc开始的行 2:/test$Enter #查找以abc结束的行 3://^testEnter #查找^tabc字符串
二、替换基本替换
1::s/vivian/sky/ #替换当前行第一个 vivian为 sky2::s/vivian/sky/g #替换当前行所有 vivian为 sky3::n,$s/vivian/sky/ #替换第 n行开始到最后一行中每一行的第一个 vivian为 sky4::n,$s/vivian/sky/g #替换第 n行开始到最后一行中每一行所有 vivian为 sky5:(n为数字,若 n为.,表示从当前行开始到最后一行)6: 7::%s/vivian/sky/ #(等同于:g/vivian/s//sky/)替换每一行的第一个 vivian为 sky8::%s/vivian/sky/g #(等同于:g/vivian/s//sky/g)替换每一行中所有 vivian为 sky
可以使用#或+作为分隔符,此时中间出现的/不会作为分隔符
1::s#vivian/#sky/# 替换当前行第一个 vivian/为 sky/2::%s+/oradata/apras/+/user01/apras1+(3:使用+来替换/):/oradata/apras/替换成/user01/apras1/
删除文本中的^M问题描述:对于换行,window下用回车换行(0A0D)来表示,linux下是回车(0A)来表示。这样,将window上的文件拷到unix上用时,总会有个^M,请写个用在unix下的过滤windows文件的换行符(0D)的shell或c程序。使用命令:cat filename1| tr-d“^V^M” newfile;使用命令:sed-e“s/^V^M//” filename outputfilename需要注意的是在1、2两种方法中,^V和^M指的是Ctrl+V和Ctrl+M。你必须要手工进行输入,而不是粘贴。在vi中处理:首先使用vi打开文件,然后按ESC键,接着输入命令:
1::%s/^V^M//2::%s/^M$//g
如果上述方法无用,则正确的解决办法是:
1: tr-d“/r” src dest2: tr-d“/015″ dest3: 4: strings AB
其它用法
1::s/str1/str2/ #用字符串 str2替换行中首次出现的字符串 str12::s/str1/str2/g #用字符串 str2替换行中所有出现的字符串 str13::.,$ s/str1/str2/g #用字符串 str2替换正文当前行到末尾所有出现的字符串 str14::1,$ s/str1/str2/g #用字符串 str2替换正文中所有出现的字符串 str15::g/str1/s//str2/g #功能同上
从上述替换命令可以看到:g放在命令末尾,表示对指定行的搜索字符串的每次出现进行替换;不加 g,表示只对指定行的搜索字符串的首次出现进行替换;g放在命令开头,表示对正文中所有包含搜索字符串的行进行替换操作。也就是说命令的开始可以添加影响的行,如果为g表示对所有行;命令的结尾可以使用g来表示是否对每一行的所有字符串都有影响。三、简单的vim正则表达式规则在vim中有四种表达式规则:magic(/m):除了$.*^之外其他元字符都要加反斜杠nomagic(/M):除了$^之外其他元字符都要加反斜杠/v(即 very magic之意):任何元字符都不用加反斜杠/V(即 very nomagic之意):任何元字符都必须加反斜杠vim默认使用magic设置,这个设置也可以在正则表达式中通过/m/M/v/V开关临时切换。例如:
1://m.* #查找任意字符串2://M.* #查找字符串.*(点号后面跟个星号)3: 4://v(a.c){3}$ #查找行尾的abcaccadc5://m(a.c){3}$ #查找行尾的(abc){3}6://M(a.c){3}$ #查找行尾的(a.c){3}7://V(a.c){3}$ #查找任意位置的(a.c){3}$
推荐使用默认的magic设置,在这种情况下,常用的匹配有:
1://abc #查找以test开始的字符串 2:/abc/ #查找以test结束的字符串 3: 4:$ 匹配一行的结束 5: ^ 匹配一行的开始 6:/ 匹配一个单词的开始,例如//abcEnter:查找以abc开始的字符串 7:/ 匹配一个单词的结束,例如/abc/Enter:查找以abc结束的字符串 8: 9:* 匹配0或多次10:/+ 匹配1或多次11:/= 匹配0或1次12: 13:. 匹配除换行符以外任意字符 14:/a 匹配一个字符15:/d 匹配任一数字 16:/u 匹配任一大写字母17: 18: [] 匹配范围,如t[abcd]s匹配tas tbs tcs tds19:/{} 重复次数,如a/{3,5}匹配3~5个a20:/(/) 定义重复组,如a/(xy/)b匹配ab axyb axyxyb axyxyxyb...21:/| 或,如:for/|bar表示匹配for或者bar22: 23:/%20c 匹配第20列24:/%20l 匹配第20行
vi+文件名,可以创建一个文件
用cat+问价名,可以查看一个文件
用cut-f3+文件名,可以选择文件中的第3段字符
输入英文的冒号:然后输入wq可以保存文件内容并退出
输入英文的冒号:然后输入q可以放弃保存并退出
输入英文的冒号/然后输入一个字符串,可以查找该字符串
如果以上经验帮到您,麻烦在左下角给点个赞,谢谢!