语法:命令替换

默认情况下,会在屏幕上显示命令的输出。
命令替换表爱上运行shell命令并将其输出存储到变量或者使用echo打印显示。

语法为:

VAR=`command-name`
VAR="`grep word /path/to/file`"

或者
 
VAR=$(command-name)
VAR="$(grep word /path/to/file)"

在shell中保存命令输出到变量中

您可以使用以下语法将命令输出存储到shell变量:

将当前日期和时间存储到变量Todays中:

todays=$(date)

查看$todays的值:

echo "$todays"

使用grep命令用户jack并将输出存储到名为myuser的变量中:

myuser="$(grep '^jack' /etc/passwd)"
echo "$myuser"

使用tee命令,可以在显示输出的同时,将内容存储在变量中:

foo="$(grep '^jack' /etc/passwd | tee /dev/tty) "
echo "$foo"
在Linux/Unix中如何将grep的值赋值给shell变量

在Linux shell中,如何将grep命令的输出存储在shell变量中?
在Linux或Unix中如何将某个命令的输出存储到变量中?

例子

使用echo命令显示日期和时间:

echo "Today is $(date)"

或者

echo "Today is `date`"
日期:2019-11-20 08:53:40 来源:oir作者:oir