linux - 在父脚本中访问 shell 脚本返回的值

标签 linux bash shell

我正在尝试访问从父 shell 脚本调用的 shell 脚本返回的字符串。像这样:

ex.sh:

echo "Hemanth"

ex2.sh:

sh ex.sh

if [ $? == "Hemanth" ]; then
  echo "Hurray!!"
else
  echo "Sorry Bro!"
fi

有没有办法做到这一点?任何帮助将不胜感激。

谢谢。

最佳答案

ex2.sh 上使用命令替换语法

valueFromOtherScript="$(sh ex.sh)"
printf "%s\n" "$valueFromOtherScript"

echo 默认在字符串传递后输出一个换行符,如果你在上面的变量中不需要它使用 printf as

printf "Hemanth"

在第一个脚本上。还值得添加 $? 将只返回最后执行的命令的退出代码。它的值被解释为 0 表示成功运行,失败时为非零值。它永远不会有您尝试使用的字符串值。

关于linux - 在父脚本中访问 shell 脚本返回的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42122373/

相关文章:

linux - grep while read 行替代

string - 如何在 Bash 中将字符串转换为小写

bash - 在 vim 脚本中使用 bash 计算器 - 奇怪的行为

windows - 有没有办法列出Windows中的所有别名

python - 如何从同样动态创建 salt 状态的循环中要求动态创建的 salt 状态?

linux - 我怎样才能找到程序停止的原因?

java - 如何通过管道将输入输入到 java 程序中,但该输入仍然显示在输出中?

linux - 在 Raspbian 上为 $PATH 添加永久值

linux - 如何从 sh 脚本运行 csh 脚本

shell - Cakephp httpsocket ssl 不适用于控制台 shell