Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在终端和vim中使用grep时的差异_Vim_Grep - Fatal编程技术网

在终端和vim中使用grep时的差异

在终端和vim中使用grep时的差异,vim,grep,Vim,Grep,在终端中使用grep和在vim中使用:grep时,我看到了差异 前者,grep-ri--include*.sh backup返回结果 后者,:grep-ri--include*.sh backup没有 有什么想法吗 编辑1: :set grepprg返回grepprg=grep-n$*/dev/null 编辑2:我唯一的grep别名是alias grep='grep--color=auto'更改我的grepprg值修复了我的问题 在my~/.vimrc " Grep settings set g

在终端中使用
grep
和在vim中使用
:grep
时,我看到了差异

前者,
grep-ri--include*.sh backup
返回结果

后者,
:grep-ri--include*.sh backup
没有

有什么想法吗

编辑1:
:set grepprg
返回
grepprg=grep-n$*/dev/null


编辑2:我唯一的grep别名是
alias grep='grep--color=auto'

更改我的
grepprg
值修复了我的问题

在my
~/.vimrc

" Grep settings
set grepprg=grep\ -n\ $*

grepprg=grep-n$*/dev/null
的默认值是使用/dev/null作为目录。

不同的工作目录?您的
grep
命令真的有效吗?您没有为
grep
指定目标。您需要类似于
grep-ri的东西——包括*.sh备份。
。此外,您可能还想签出//。我的grep命令确实有效。我相信我所在的目录正在使用中。看起来您正在使用GNU grep 2.11+的版本。如果使用
-r
标志,则默认使用当前工作目录。这取决于您的环境。如果您经常在较旧的机器或更多的unix投诉箱上工作,那么您可能需要改变您的习惯。否则我就不会担心了。但是,如果您发现自己正在进行一系列递归的grepping,那么我建议您学习
git grep
、ag和/或ack;如果只指定了一个文件名,则需要强制grep命令打印找到匹配项的文件名。