- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
以下问题与发布在 this question 上的答案有关:
我喜欢创建自己的函数来打开新终端的想法,因此 Craig Walker 在上述问题中链接到的脚本符合我的需要。该脚本由 Mark Liyanage 编写,已找到 here.
那个脚本是这样的:
#!/bin/sh
#
# Open a new Mac OS X terminal window with the command given
# as argument.
#
# - If there are no arguments, the new terminal window will
# be opened in the current directory, i.e. as if the command
# would be "cd `pwd`".
# - If the first argument is a directory, the new terminal will
# "cd" into that directory before executing the remaining
# arguments as command.
# - If there are arguments and the first one is not a directory,
# the new window will be opened in the current directory and
# then the arguments will be executed as command.
# - The optional, leading "-x" flag will cause the new terminal
# to be closed immediately after the executed command finishes.
#
# Written by Marc Liyanage <http://www.entropy.ch>
#
# Version 1.0
#
if [ "x-x" = x"$1" ]; then
EXIT="; exit"; shift;
fi
if [[ -d "$1" ]]; then
WD=`cd "$1"; pwd`; shift;
else
WD="'`pwd`'";
fi
COMMAND="cd $WD; $@"
#echo "$COMMAND $EXIT"
osascript 2>/dev/null <<EOF
tell application "Terminal"
activate
do script with command "$COMMAND $EXIT"
end tell
EOF
我对链接站点上的脚本做了一处更改;我注释掉了输出“$COMMAND $EXIT”的行以消除一些冗长。但是,当我运行脚本时,我仍然得到这个输出
tab 1 of window id 2835
就在它打开新窗口并执行我传入的命令之前。知道为什么会发生这种情况吗? (我尝试在调用 oascript 之前将 stderr 的重定向移动到/dev/null,但这没有任何区别。)
最佳答案
tab 1 of window 2835
是 do script
命令返回的对象的 AppleScript 表示:它是创建的 tab
实例执行命令。 osascript
将脚本执行的结果返回到标准输出。由于 AppleScript 脚本中没有明确的 return
,整个脚本的返回值是最后执行语句的结果,通常是 do script
命令。两个最简单的修复方法是重定向 osascript 的标准输出(最好不重定向标准错误,以防出现错误):
osascript >/dev/null <<EOF
或者在 AppleScript 中插入一个显式的 return
(没有值)。
tell application "Terminal"
activate
do script with command "$COMMAND $EXIT"
end tell
return
关于macos - 我怎样才能摆脱这个 osascript 输出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4146516/
我有以下使用 osascript 命令的 shell 脚本: #!/usr/bin/osascript on run argv tell application "Terminal" ac
我想在 bash 中执行此操作: read -r -d '' script <<'EOF' echo 1 echo 2 echo 3 EOF osascript -e "do shell script
这是我的小测试脚本: do shell script "cd ~/Desktop; ls -l1" set x to the result tell application "Finder" to a
谁能想出解决 osascript 按名称索引瓶颈的方法,因为它引用了同一应用程序的多个实例? 如果我们获得两个进程 ID——同一个应用程序的两个不同实例中的每一个,osascript 返回同一个实例以
以下问题与发布在 this question 上的答案有关: 我喜欢创建自己的函数来打开新终端的想法,因此 Craig Walker 在上述问题中链接到的脚本符合我的需要。该脚本由 Mark Liya
set thisFolder to (choose folder with prompt "Choose the folder to which you want to attach the acti
我写了一个发送文本的命令,但它不起作用,即使我将命令粘贴到其中也是如此。是否有语法错误或我遗漏了什么? 打印的命令是:/usr/bin/osascript -e '告诉应用程序“消息”' -e '将
我有一些使用 osascript 执行的 AppleScript 代码。这是一个更大的 Perl 程序的一部分。我希望能够从 AppleScript 打印到标准输出,然后让 Perl 脚本处理输出。但
我正在尝试从 Python 将文件路径传递到 n Applescript 中,不知道如何实现它。下面的代码显示了工作的 Applescript 代码,它提示打开一个或多个文件,然后重新分配音频 cha
好的,我有这个非常简单的 python 脚本: import time import sys for i in range(25): time.sleep(1) print(i) sy
我有一个 LiveCode 应用程序,作为更大目的的一部分,它检查“最前面”应用程序的名称(即菜单栏中的名称)。我让 LiveCode 通过 shell 运行它: osascript -e 'tell
OSX 优胜美地 Xcode 7.1 我正在通过 vim 或 atom 开发 iOS。但有件事我不喜欢。必须按 command + tab 然后切换到 Xcode 才能运行。 我发现这个脚本可以解决这
我一直在尝试创建一个脚本来生成所有可用服务名称的 XML 结构。它在脚本编辑器中运行良好,但无法从命令行运行。我的代码是: ObjC.import("Cocoa"); ObjC.import("App
我正在尝试在远程网格上托管的 selenium 测试中运行以下 Applescript 片段。 protected void enableTouchIDLogin(){ Runtime runt
我知道我可能非常想念这个, 但有人知道为什么这会不断返回错误吗? $ node -v && node v0.4.6 > var cmd = 'osascript -e "open location \
使用 python,我正在尝试“””字符串和 osascript。所以我所拥有的是这个 os.system("""arch -i386 osascript -e
使用 osascript,我可以告诉终端应用程序在单独的终端窗口中打开 ssh 连接,但是,当我尝试在脚本中传递 bash 变量时遇到错误。 这个脚本工作得很好: osascript -e 'tell
我想问一下在设计 Mac (Sierra) 应用程序时是否可以在 swift/xcode 中使用 osascript。所以我基本上只是使用 Xcode 和 swift 构建了一个空的应用程序。 我现在
Apple 权限 hell :osascript 和辅助功能(辅助访问)。 错误:不允许使用 osascript 进行辅助访问。 (-1719) 我在名为 QuickenUpdate.scpt 的文件
我正在尝试在新窗口中创建一个新进程。我正在关注此示例的命令 Running a command in a new Mac OS X Terminal window (使用 Java 进程构建器)。我打
我是一名优秀的程序员,十分优秀!