我收到了一些命令行说明:
ROOT=`cmd1 | cmd2 | cmd3`
echo ROOT=$ROOT
...
似乎这个$ ROOT存储了三个流水线cmds的输出。但什么是$ ROOT?它是一个环境变量吗?是寄存器吗?我怎么称呼它?我可以有其他类似的变量吗?例如$ APPLE?我希望了解有关$ ROOT的更多信息:)
答案 0 :(得分:1)
ROOT
是一个环境变量,简单明了。 $ROOT
只是ROOT
环境变量的扩展/评估。
例如:
xyzzy=plugh
echo xyzzy # gives xyzzy
echo $xyzzy # gives plugh
ROOT
环境变量使用的内容可能很重要(或不重要),但实际的命名毫无疑问 - 这是一个环境名为ROOT
的变量。
答案 1 :(得分:1)
Root是environment variable。变量在执行期间被扩展,因此当echo
回显$ ROOT时,它会扩展为变量的内容。在这种情况下,反引号表示“执行命令”,因此发出cmd1 | cmd2 | cmd3
的输出。你的例子令人困惑的是echo
命令也使用变量名作为文本,这可能更有意义:
ROOT=`cmd1 | cmd2 | cmd3`
echo The ROOT variable is: $ROOT