我一次又一次地看到Bash在Stack Overflow上使用eval的答案,并且答案得到了抨击,双关语是为了使用这种"邪恶"结构.为什么eval这么邪恶?
如果eval不能安全使用,我应该使用什么呢?
在Windows中,我如何使用脚本/命令的输出作为另一个脚本的参数?(管道|在这里不起作用,因为其他脚本不能从标准输入读取)
太澄清了:我有一个需要参数arg的AnotherScript,例如:
AnotherScript 12
Run Code Online (Sandbox Code Playgroud)
现在我希望参数(示例中的12)来自脚本的输出,称之为ScriptB.所以我想要一些类似的东西
AnotherScript (ScriptB)
Run Code Online (Sandbox Code Playgroud)
AnotherScript实际上是一个需要参数的python脚本,而ScriptB是一个产生一些数字的cygwin bash脚本,所以我想使用它的方式如下:
c:\Python26\python.exe AnotherScript (c:\cygwin|bin|bash --login -i ./ScriptB)
Run Code Online (Sandbox Code Playgroud)
谢谢你的回答.但是,考虑到需要费力的'for'构造,我已经重写了AnotherScript以从标准输入中读取.这似乎是一个更好的解决方案.