将sed的输出存储到变量中

时间:2011-07-19 14:48:03

标签: bash

我想将文件的第二行存储到变量中,所以我这样做:

sed -n '2p' myfile

我希望将sed命令的输出存储到名为line的变量中。

执行此操作的正确语法是什么?

4 个答案:

答案 0 :(得分:110)

像这样使用command substitution

line=$(sed -n '2p' myfile)
echo "$line"

另请注意,=符号周围没有空格。

答案 1 :(得分:22)

一般来说,

variable=$(command)

variable=`command`

后者是旧语法,更喜欢$(command)

注意:variable = ....表示使用第一个参数variable,第二个=

执行命令....

答案 2 :(得分:2)

要将第三行存储到变量中,请使用以下语法:

variable=`echo "$1" | sed '3q;d' urfile`

答案 3 :(得分:-1)

line=`sed -n 2p myfile`
echo $line