Shell 使用System.cmd运行Applescript
我有这个函数:Shell 使用System.cmd运行Applescript,shell,elixir,phoenix-framework,Shell,Elixir,Phoenix Framework,我有这个函数: def run(id) do {_, status} = System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript"], arg0: id {:ok, status} end 我需要将id传递到osascript。shell等价物是:osascript~/lib/script/test.applescript 1,但我在Elixir中找不到正确的选项。无论我是否执行以下操作,都会返回参数错误:
def run(id) do
{_, status} = System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript"], arg0: id
{:ok, status}
end
我需要将id
传递到osascript
。shell等价物是:osascript~/lib/script/test.applescript 1
,但我在Elixir中找不到正确的选项。无论我是否执行以下操作,都会返回参数错误:
System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript"], arg0: id
或
或
或
如何将
id
传递到System.cmd“osascript”[“{File.cwd!}/lib/script/test.applescript”]
?似乎它必须是一个字符串:
{_, status} = System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript", "#{id}"]
很好
System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript", id]
System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript #{id}"]
{_, status} = System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript", "#{id}"]