[英]AppleScript do script always echos command
on run argv
set scpt to first item of argv
tell application "Terminal"
do script "bash " & scpt
activate
end tell
end run
问题是无论我告诉它执行什么脚本命令,它总是首先在终端中打印该命令。 我不想要这种回声行为,如何使用 AppleScript 禁用它。
编辑 1:这是纯 AppleScript 逻辑的一个很好的例子,output 看起来很糟糕。 现在,虽然您可以执行 set +v bash 命令来关闭 echo,但假设echo foo
是一个非常长的命令,清除屏幕会导致闪烁。 我在问如何启用 echo off 或set +v
而不会导致回声开始?
tell application "Terminal"
set a to do script ""
activate
do script "echo foo" in a
do script "echo ardvark" in a
end tell
编辑 2:我尝试使用来自 bash 的 set +v 和 clear 并且它没有被维护
tell application "Terminal"
set a to do script ""
activate
do script "bash -c \"set +v\" ; clear" in a
do script "echo foo" in a
do script "echo hello world" in a
end tell
不确定我是否完全理解您的问题/需求,但据我所知,我有相反的需求,因此,阅读您的问题解决了我的问题。
# launch application
tell application "Terminal"
set a to do script "/path/script.sh"
activate
end tell
Output 回显到终端
# launch application
tell application "Terminal"
activate
do shell script "/path/script.sh"
end tell
没有 output 回显到终端
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.