unix – 何时使用单引号,在grep中双引号?

前端之家收集整理的这篇文章主要介绍了unix – 何时使用单引号,在grep中双引号?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在尝试在文件搜索“hello”的简单模式时,以下所有形式的grep都可以工作:

> grep hello file1
> grep’hello’file1
> grep“hello”file1

是否存在上述形式之一有效但其他形式无效的特定情况.
如果我用一个代替另一个,它会有什么不同吗?

这实际上取决于你的 shell.行情(任何一种)主要用于处理空白.例如,以下内容
grep hello world file1

将在名为“world”和“file1”的文件中查找“hello”一词

grep "hello world" file1

将在file1中寻找“hello world”.

如果搜索字符串包含您希望评估的变量或其他项,则在单引号或双引号之间进行选择非常重要.使用单引号,字符串按字面意思取得,不会发生扩展.使用双引号,变量将被扩展.例如(使用Bourne派生的shell,如Bash或ZSH):

VAR="serverfault"
grep '$VAR' file1
grep "$VAR" file1

第一个grep将在file1中查找文字字符串“$VAR1”.第二个将扩展“$VAR”变量并在file1中查找字符串“serverfault”.

原文链接:https://www.f2er.com/bash/385969.html

猜你在找的Bash相关文章