相关疑难解决方法(0)

如何将命令行参数传递给使用open命令运行的程序?

有没有办法将参数传递给正在运行的程序:

open -a /Applications/Utilities/Terminal.app ~/my_executable
Run Code Online (Sandbox Code Playgroud)

我试过了:

open -a /Applications/Utilities/Terminal.app ~/my_executable arg1 arg2
Run Code Online (Sandbox Code Playgroud)

但这被解释为告诉终端打开 ~/my_executable ~/arg1 ~/arg2.

我试过了:

open -a /Applications/Utilities/Terminal.app '~/my_executable arg1 arg2'
Run Code Online (Sandbox Code Playgroud)

但是它选择了arg1和arg2,好像它们是路径的一部分而不是参数.

我试过了:

open -a /Applications/Utilities/Terminal.app ~/my_executable | xargs arg1 arg2
Run Code Online (Sandbox Code Playgroud)

我也尝试过:

open -a /Applications/Utilities/Terminal.app ~/my_executable --args arg1 arg2
Run Code Online (Sandbox Code Playgroud)

但是使用那个标志,args被传递到终端.

注意

我只允许将参数更改为Terminal.app([]中的部分):

open -a /Applications/Utilities/Terminal.app [~/my_executable arg1 arg2]
Run Code Online (Sandbox Code Playgroud)

macos bash

16
推荐指数
2
解决办法
2万
查看次数

标签 统计

bash ×1

macos ×1