"$ line"和"^ $ line"之间的区别是什么?

0 unix linux bash

有一段时间读取循环:

while read line; do
    grep "^$line" file1
done < target
Run Code Online (Sandbox Code Playgroud)

我应该"^$line"用来得到正确的答案.我想知道"$line"和之间有什么区别 "^$line"

Chr*_*our 6

while循环是不是与此有关,它是grep使命令^显著.该^字符是正则表达式中的标识符.它匹配行的开头,因此grep "$line" file匹配文件$line中子字符串的所有行,但grep "^$line"只匹配以字符串开头的行$line.