程序输出作为另一个程序的参数

程序输出作为另一个程序的参数

我正在阅读Unix 编程环境.有示例程序

echo "time is 'date'"

输出为

time is {current time}

但是在 ubuntu 的 bash shell 中,它没有按预期提供输出。它按原样打印整行

 time is 'date'

这是为什么呢?阅读过时的书籍来学习 Linux 操作系统可以吗?

答案1

您想使用以下内容:

echo "time is `date`"

`(反引号)代替 '(撇号)

Unix/Linux 的基础是一样的,但很多实用程序会随着时间而变化,因此它们的选项会随时间而有很大差异。即使不同版本之间也存在差异。因此,旧书通常没问题,因为大多数内容仍能正常工作并且仍然准确。新书可以让您更好地使用过去不存在的新功能。

答案2

您还可以使用它echo "time is $(date)"来避免混淆单引号和反引号。

相关内容