【问题标题】:Run a Python script from a .command file with Spotlight on MacOS在 MacOS 上使用 Spotlight 从 .command 文件运行 Python 脚本
【发布时间】:2021-05-02 18:52:27
【问题描述】:

我正在尝试通过使用 Spotlight 打开一个 .command 文件,从 MacOS 上的“自动化无聊的东西”运行 Python 脚本。通过导航到包含 .py 文件的目录然后输入:python3 mclip.py [keyword],我已经能够在终端中成功运行脚本,但是当尝试使用我的 mclip.command 文件运行它时,终端会打开一个新窗口 and displays this:

我不确定为什么它说没有这样的文件或目录,因为该文件肯定存在于所述目录中。此外,即使 mclip.command 运行成功,我如何将 [keyword] 参数传递给它?

我的 mclip.command 文件的内容是:

#!/usr/bin/env bash
python3 /path/to/my/pythonScript.py

我正在尝试通过打开聚光灯并输入“mclip.command”来运行它。

我怎样才能使这个工作,这样我就不必每次想运行脚本时都导航到包含 .py 文件的文件夹?

如果您想要更多上下文,这里有一些指向我一直在遵循的说明的链接:首先是脚本本身的说明在Project: Multi-Clipboard Automatic Messages 下,创建和运行 .command 文件的说明在@下987654323@.

【问题讨论】:

    标签: python macos


    【解决方案1】:

    创建mclip.command 文件后:

    • 转到Terminal 并输入cd /your/folder/location/where/command/file/located/。这会更改命令文件所在的当前目录。

    • 然后输入chmod u+x mclip.command。这将使您的文件可执行。

    现在您应该可以在Spotlight 上运行您的脚本了。要么:

    • 按键盘上的Cmd + space 或点击右上角的放大镜。

    • 输入 mclip.command(或者只用 mclip 和 Spotlight 来完成剩下的工作)然后按 Enter。


    我还是有问题:

    • 无法将参数传递到我在Spotlight 上的命令文件。

    我想做类似的事情,转到 Spotlight 并输入:

    • 首先mclip.command save <keyword>,以便保存剪贴板中复制的内容到密钥。

    • 然后mclip.command <keyword> 以便重用之前保存的内容。

    在 Windows 上似乎很容易做到(按 Win-R 并输入 mcb save <keyword>),但不知何故,在 Mac OS 上似乎不可能。

    是吗? 我很想找到一个解决方案或至少一种解决方法来直接在 Spotlight 上快速执行传递参数的脚本...

    如果您有答案,请告诉我们 =)

    【讨论】:

    • 我从 scottgwald 找到了一个不错的解决方法here。基本上,您可以编辑 .command 文件并使用 read 命令接受用户输入,然后在您告诉 .command 文件运行代码时将其作为参数传递。
    猜你喜欢
    • 1970-01-01
    • 2011-02-22
    • 2021-07-10
    • 2021-06-10
    • 1970-01-01
    • 2018-11-17
    • 2020-08-19
    • 2020-09-14
    • 1970-01-01
    相关资源
    最近更新 更多