在linux中使用自定义别名中的find命令无法获得结果
我在.bashrc中有这个命令在linux中使用自定义别名中的find命令无法获得结果,linux,shell,grep,find,Linux,Shell,Grep,Find,我在.bashrc中有这个命令 mygrep() { find /var/www/site1 -exec grep -Hn "$1" {} \; } 但有时它并不会带来结果 但是这个命令返回完整的结果 grep -r "serch term" /var/www/site1 上面的函数有什么问题在我的Linux机器上运行时,您的函数没有任何问题。要使结果看起来完全相同,请将-n选项添加到两个grep调用:grep-rn“serch term”/var/www/si
mygrep() {
find /var/www/site1 -exec grep -Hn "$1" {} \;
}
但有时它并不会带来结果
但是这个命令返回完整的结果
grep -r "serch term" /var/www/site1
上面的函数有什么问题在我的Linux机器上运行时,您的函数没有任何问题。要使结果看起来完全相同,请将
-n
选项添加到两个grep调用:grep-rn“serch term”/var/www/site1
这是我动态比较两个命令的输出(在bash中)所做的:
diff我看不出有什么区别。为什么不将-type f添加到您的查找中?你的grep有别名吗?不,grep没有别名。我会尝试键入fi find,如果我使用普通grep,那么它甚至会在字符串中搜索模式,就像搜索ast
时搜索master
一样,但我的自定义find命令只查找master
而不是ast
匹配我已经尝试过了,但仍然有许多关键字没有出现在mygrep中,而是出现了用grep。我在那个文件夹中有很多子目录。这就是原因。也许在那些董事会里找不到。如何调试在更复杂的目录树上运行我的测试仍然没有显示任何区别。您正在使用find和grep的GNU实现吗?我的find
来自GNU findutils 4.4.2,我的grep
来自GNU grep 2.9。find和grep的其他实现在某些情况下可能表现不同。