我正在尝试编写名为IDL脚本的脚本,例如a.pro。在这个脚本的最后,我想执行shell脚本b。我正在尝试使用spawn命令来做到这一点。但我也需要从IDL脚本传递一些参数(变量值)给这个shell脚本。我怎样才能做到这一点?从IDL脚本将参数传递给shell脚本
1
A
回答
3
您发送给SPAWN
的命令只是一个字符串;以任何你喜欢的方式创建字符串。我更喜欢使用C风格的格式代码:
filename = 'output.log'
n_lines = 50
cmd = string(n_lines, filename, format='(%"tail -%d %s")')
; cmd = 'tail -50 output.log'
spawn, cmd, output
1
有两种方法来调用SPAWN
来完成你想要的东西:
调用脚本,b
,直接:
spawn, ['b', arg1, arg2], /noshell
优点:
- 更快,因为它不会创建
bash
的新实例。 - 更安全,因为您不必转义或引用参数。
格式为bash
终端字符串:
script_path = 'b'
cmd = strjoin([script_path, arg1, arg2], ' ')
spawn, cmd
优点:
- 有时更容易,因为你可以使用的格式,你已经习惯了从
bash
看到。
在大多数情况下,你应该直接调用脚本和其他程序(除了IDL)与spawn, /noshell
,因为速度得到很大的提高,而且安全性也相当可观。
相关问题
- 1. 将参数传递给shell脚本
- 2. 将shell脚本的参数传递给jython脚本
- 3. 将参数从shell脚本传递到SQL脚本
- 4. 从Shell脚本传递参数到Python
- 5. 将第二个参数从shell脚本传递给Java
- 6. 如何从shell脚本将参数传递给.sql文件
- 7. 如何从python脚本将参数传递给autoIT脚本
- 8. 将参数传递给脚本函数
- 9. 将groovy变量传递给shell脚本
- 10. 将参数传递给sql脚本
- 11. 将参数传递给邮件脚本
- 12. 将参数传递给Outlook脚本
- 13. 将参数传递给powershell脚本
- 14. 将参数传递给Ruby脚本
- 15. Python:将参数传递给脚本
- 16. 将参数传递给mongo脚本
- 17. 将参数值传递给PowerShell脚本
- 18. 将bash参数传递给python脚本
- 19. 将参数传递给脚本
- 20. Apps脚本将参数传递给cUrl
- 21. 将参数传递给脚本
- 22. 将参数传递给pig jython脚本
- 23. 如何将参数传递给脚本
- 24. 将参数传递给包含来自Shell脚本的ACCEPT的SQL * Plus脚本
- 25. shell脚本:这是传递给函数
- 26. 从java程序调用shell脚本并将参数从java传递给shell脚本循环
- 27. 如何使用shell脚本将参数传递给java代码
- 28. 如何将shell脚本参数传递给oozie
- 29. 将参数传递给来自C#进程的shell脚本
- 30. 将参数传递给来自Python的shell脚本
你可以在字符串上使用'EXECUTE'函数并以这种方式传递变量。 –
[tag:idl]标签用于接口描述语言。 – asynchronos