执行printf命令shell脚本

时间:2016-02-22 09:50:26

标签: linux bash shell

我是编写shell脚本的初学者(可能是我的第一个shell脚本)。 我有一个我喜欢运行的shell脚本。该命令是一个简单的grep命令,基于传递给它的参数。我设法使用下面的脚本获取正确的grep命令。

FILE='testurls'
MERCHANT_ID='8'
printf "grep '^%s' %s\n" "$MERCHANT_ID" "$FILE"

./hello.sh 
grep '^8' testurls

我如何执行命令而不是打印它。

2 个答案:

答案 0 :(得分:2)

printf没有必要

FILE='testurls'
MERCHANT_ID='8'
grep "^$MERCHANT_ID" "$FILE"

答案 1 :(得分:2)

您可以使用shell反引号引用。这将存储可执行命令的输出。

语法是: -

1)Legacy Bourne shell反写``:

var=`grep "^$MERCHANT_ID" "$FILE"` 
printf "%s\n" "$var"

2)$()语法:

var=$(grep "^$MERCHANT_ID" "$FILE")
printf "%s\n" "$var"