“if echo $line | grep -F = &>/dev/null” 的作用是什么?

“if echo $line | grep -F = &>/dev/null” 的作用是什么?

我不确定以下行在 bash 脚本中的作用:

if echo $line | grep -F = &>/dev/null
then
  ...

我知道&>/dev/null是 的缩写>/dev/null 2>&1,但是我不确定它的用途,=而且我找不到任何解释。

答案1

man grep

-F, --fixed-strings
       Interpret PATTERN as a  list  of  fixed  strings,  separated  by
       newlines,  any  of  which is to be matched.  (-F is specified by
       POSIX.)

所以它只是检查是否存在=作为文字字符串$line

答案2

它确实:

case $line in 
(*=*) : this would be the then block
;; 
(*)   : maybe an else\?
;;
esac

...只是不太好,或者说几乎没有那么快。

相关内容