使用System.CMD运行AppleScript



我已经有了这个功能:

def run(id) do
  {_, status} = System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript"], arg0: id
  {:ok, status}
end

我需要将id传递给osascript。相当的外壳是:osascript ~/lib/script/test.applescript 1,但我找不到elixir中的正确选项。一切都会返回参数错误,无论我是否这样做:

System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript"], arg0: id

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}"]

如何将id传递给System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript"]

似乎是一根字符串的是:

{_, status} = System.cmd "osascript", ["#{File.cwd!}/lib/script/test.applescript", "#{id}"]

工作正常。

最新更新