grep命令相关问题
当我在一个空文件夹下面创建了三个文件,anaconda-me.cfg install.log install.log.syslog时,使用ls | grep *.log的回显是正确的,但是当我继续创建一个a.log文件,然后继续使用ls | grep *.log却没有任何回显,这是怎么回事呢,求助!!!! 用strace看了一下是管道写的问题,但是不知道为啥管道写会失败?等一个答案 卧槽 试了一下 还真是这样多试了几种场景只存在一个.log结尾的文件时,能匹配到,否则无法匹配到 我又去测试了一下,不仅仅是.log后缀文件,只要存在同名的后缀,类似.a这种,只要存在两个以上,都不能匹配到 *.log使用了 shell通配符, 会按照当前目录的文件匹配, 只有 anaconda-me.cfg install.log install.log.syslog 时, ls | grep *.log相当于ls | grepinstall.log, 当再加a.log,ls | grep *.log 相当于ls | grepa.loginstall.log , 就是在install.log中找a.log了, 不会从ls的输出中找了
如果你找符合*.log的文件 , 直接 ls *.log就可以了 hiplease 发表于 2022-7-30 12:24
*.log使用了 shell通配符, 会按照当前目录的文件匹配, 只有 anaconda-me.cfg install.log install ...
感谢解答终于明白了
页:
[1]