我想写一个蚂蚁脚本
这是我到目前为止所拥有的,但它没有做任何事情
<exec executable="/bin/bash" os="${os.unix}" spawn="true">
<arg value="-c" />
<arg value="gnome-terminal su appium" />
<arg value="appium &" />
</exec>
Run Code Online (Sandbox Code Playgroud)
财产的价值是${os.unix}多少?如果要使用os参数,通常会为其提供字符串常量而不是属性值。
<exec executable="/bin/bash" os="unix" spawn="true">
<arg value="-c" />
<arg value="gnome-terminal su appium" />
<arg value="appium &" />
</exec>
Run Code Online (Sandbox Code Playgroud)
这样,您可以<exec>为所有 Unix 风格的操作系统设置一个<exec>任务,并为所有其他操作系统 (Windows) 设置另一个任务。
也明白之间的差别<arg value="..."/>和<arg line="..."/>。我不知道 的确切命令结构gnome-terminal,但是当您将某些内容作为 avalue传递时,您将其作为单个参数传递——即使其中有空格。例如:
<exec executable="foo">
<arg value="-f foo -b bar"/>
</exec>
Run Code Online (Sandbox Code Playgroud)
将执行就像我在命令行中输入的一样:
$ foo "-f foo -b bar" # This is one command with one parameter. Note the quotation marks!
Run Code Online (Sandbox Code Playgroud)
如果我这样做:
<exec executable="foo">
<arg line="-f foo -b bar"/>
</exec>
Run Code Online (Sandbox Code Playgroud)
将执行就像我在命令行中输入的一样:
$ foo -f foo -b bar # 这是一个有四个参数的命令
这相当于上面的 Ant 任务:
<exec executable="foo">
<arg value="-f"/>
<arg value="foo"/>
<arg value="-b"/>
<arg value="bar"/>
</exec>
Run Code Online (Sandbox Code Playgroud)
目前,您正在尝试执行:
$ /bin/bash -c "gnome-terminal su appium" "appium &"
如果这是你想要的,那很好。顺便说一句,您可以跳过 Unix 上的整个 /bin/bash 内容:
<exec executable="gnome-terminal" os="unix" spawn="true">
<arg value="su appium"/>
<arg value="appium &"/>
</exec>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3765 次 |
| 最近记录: |