在UNIX中是否可以将变量设置为表达式?
在Unix中,如何执行此操作在UNIX中是否可以将变量设置为表达式?,unix,shell,variables,sh,Unix,Shell,Variables,Sh,在Unix中,如何执行此操作 #!/bin/sh x=echo "Hello" | grep '^[A-Z]' 我希望x获取值“Hello”,但此脚本似乎不起作用。将上述内容拼写出来的正确方法是什么?您可以将其用作: 您还可以使用过时的后引号样式,如下所示: x=`echo "Hello" | grep '^[A-Z]'` 您也可以在不调用外部工具的情况下使用shell内部构件,例如case/esac str="Hello" case "$str" in [A-Z]* ) x=$str;;
#!/bin/sh
x=echo "Hello" | grep '^[A-Z]'
我希望x
获取值“Hello”
,但此脚本似乎不起作用。将上述内容拼写出来的正确方法是什么?您可以将其用作:
您还可以使用过时的后引号样式,如下所示:
x=`echo "Hello" | grep '^[A-Z]'`
您也可以在不调用外部工具的情况下使用shell内部构件,例如case/esac
str="Hello"
case "$str" in
[A-Z]* ) x=$str;;
esac
请确保您使用的是支持
grep
的预期正则表达式,grep在unix中有许多变体。+1。我非常讨厌背虱,因为它们不适合筑巢。
str="Hello"
case "$str" in
[A-Z]* ) x=$str;;
esac