我想将 netcat 函数的输出存储到变量中。我尝试了很多不同的方法,但对我来说不起作用。有人能帮我吗?整个脚本编写对我来说是全新的!
#! /bin/sh
while true;do
var = "$(echo "RDTEMP1" | netcat -q2 sanderpi 5033)"
echo &(var)
echo "$(date +%Y-%m-%d%t%H:%M:%S)"
done
答案1
在 shell 中,设置变量可以通过以下方式完成:
var1=toto
var2="$(echo toto | othercommand)"
变量名称、等号字符和为变量分配的值之间不能有空格。
然后,要回显变量,您可以执行以下操作:
echo $var
echo "$var"
echo "${var}"
在 bash/sh 中,该&
字符用于“作业控制”,这是另一个主题,...
首先使用以下内容,告诉我们它是如何进行的:
#! /bin/sh
while true;do
var="$(echo "RDTEMP1" | netcat -q2 sanderpi 5033)"
echo "$var"
echo "$(date +%Y-%m-%d%t%H:%M:%S)"
done
答案2
shell 中的变量赋值不需要赋值符周围有空格(即=
)。
正确的:
var=$(frobnify xyz)
错误的:
var = $(frobnify xyz)