在我的Bash脚本中,我使用
希望我能从
有没有简单的方法解决这个问题 - 将此循环的输出字符串存储在变量中,以便在脚本的其他部分中访问 - 而不必重新格式化我的脚本?
while read
循环和一个名为fv()
的辅助函数:fv() {
case "$1" in
out) echo $VAR
;;
* ) VAR="$VAR $1"
;;
esac
}
cat "$1" | while read line
do
...some processings...
fv some-str-value
done
echo "`fv out`"
希望我能从
while read
循环中提取出有价值的内容,并将其存储在变量中,以便在脚本的其他部分中访问。
但是上面的片段是无用的,因为我没有得到任何输出。有没有简单的方法解决这个问题 - 将此循环的输出字符串存储在变量中,以便在脚本的其他部分中访问 - 而不必重新格式化我的脚本?
fv()
,在那里我创建变量,会受到这个子shell循环的影响,但我想象它被淹没在子shell中,因为它是从那里调用的。 - theta