shell脚本不存成文件如何执行

需要执行一个shell脚本bash script.sh,现在的需求是,这个shell脚本不能在系统中被存成文件。shell脚本的内容被存储在一个变量中。是否可以通过这个变量直接执行这个脚本呢?(脚本始终不以文件形式存在)

这段脚本执行的逻辑写在一段java代码里面,CommandUtil.execute("echo " + script + " | bash") 现在是这样执行的,但时灵时不灵

请问有什么好的办法吗?在不存文件的情况下执行脚本?

阅读 3k
2 个回答

echo "echo hello ; echo world" | sh 肯定是可以的。
是不是你的script变量里有时候是多行有时候单行,单行就可以,多行就不行?
你拼接字符串也不加个引号

String[] arg = new String[] { "python", "./python/test.py" };
Process proc = Runtime.getRuntime().exec(arg);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题