python - 如何查看在 automator 中运行的脚本的标准输出

标签 python macos shell automator

我有一个 python 脚本,我希望能够将文件拖放到其中。所以我把它包装在一个 Automator 应用程序中。所述应用程序有一个单一的 Run Shell Script,其内容类似于:

export PATH=${PATH}:/usr/local/bin:/usr/local/CrossPack-AVR/bin
cd /Applications/MyApp
/Applications/MyApp/doIt.py "$1"

这行得通。我的 python 脚本运行时 $1 显示在其 sys.argv[1] 中。尽管该脚本会产生相当多的输出。我想打开某种显示输出的窗口。我不介意用户是否必须关闭它。我在 Automator 的操作中没有看到任何执行此操作的内容。我试过做类似的事情:

open -a Terminal /Applications/MyApp/doIt.py "$1"

不幸的是,那似乎并没有继承环境。它也不会将 $1 传递给 python 脚本,但也会尝试打开它。

所以我正在寻找一种方法来打开东西(终端或其他),它可以在脚本运行时捕获和滚动该脚本的标准输出,就像从脚本中调用的那样。 p>

最佳答案

在 Automator 中,可以使用特殊变量传递参数和变量:

   $@

要从在 Automator 中运行的脚本或任务获取输出,您可以单击脚本下方的结果(凹陷按钮)以查看任何输出。此外,您可以设置另一个 bash 脚本以将输出传递到标准输出或您选择的任何其他地方。

此示例显示了一个将输出和变量发送到 bash 脚本的 python 脚本。您可以将输入作为参数传递,或传递给标准输入:

automator

关于python - 如何查看在 automator 中运行的脚本的标准输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22520948/

相关文章:

python - pymysql select in 具有可变数量的参数

python - 如何在Python中比较两个数据框中的列?

python - 放大设置-更新事务DF

linux - 用于输出包含来自平面文件的不同匹配字符串的字符串的脚本

python - 当我从 CSV 中读取 Pandas 系列时,它正在将其转换为 DataFrame 吗?

swift - NSTextField Retina 字体大小问题

objective-c - 在 macOS 的 Cocoa 应用程序中,我使用 NSFileWrapper 将包保存到磁盘。如何让查找器显示我的 bundle 的正确图标?

macos - 如何在 Mac OS X 10.7 Lion 上安装 IBM DB2 Express-C?

linux - 编写 Shell 脚本

linux - : not a valid identifier bash export says