是否可以在UNIX中将变量设置为等于表达式?

Waf*_*les 2 unix variables shell sh

在Unix中,如何做到这一点?

#!/bin/sh
x=echo "Hello" | grep '^[A-Z]'
Run Code Online (Sandbox Code Playgroud)

我想x取值"Hello",但这个脚本似乎不起作用.拼写如上所述的正确方法是什么?

cod*_*ict 11

您可以使用command substitution:

x=$(echo "Hello" | grep '^[A-Z]')
Run Code Online (Sandbox Code Playgroud)

您还可以使用过时的反引号样式:

x=`echo "Hello" | grep '^[A-Z]'`
Run Code Online (Sandbox Code Playgroud)

  • 为此+1.我讨厌复仇,因为它们不能嵌套. (5认同)