macos - Mac OSX - 允许用户通过 GUI 或提示符在 shell 脚本中输入

标签 macos bash shell

我创建了一个 shell 脚本,它需要一个人输入他们的名字然后生成一个报告。当 chmod 进入可执行脚本并从终端运行时,该脚本会根据需要工作。但是,我想部署它并让它成为一种双击解决方案,而不是指示人们从终端运行它。

我尝试将脚本包装在 Platypus 中,这样可以轻松启动。但它不允许来自用户的输入,这一点很关键。

我刚找到 cocoaDialog,但我主要担心的是它是否会提供我需要的功能,并且无需其他人安装它。

有没有人遇到过这种情况或者能给点指点?

最佳答案

作为记录,我测试了(在 OS X Yosemite 上)以下脚本 (namescript),它使用 read 命令接受用户输入。在 chmod +x namescript 之后,双击 Finder 正确启动脚本并接受用户输入。

    #! /bin/bash

    echo "Please enter your name"
    read name
    echo "Your name is $name"

为脚本选择一个没有扩展名(如 namescript)或 .command 扩展名(namescript.command)。默认情况下,使用 .sh (namescript.sh) 会导致双击以在文本编辑器中打开脚本,如 OP 中所述。

关于macos - Mac OSX - 允许用户通过 GUI 或提示符在 shell 脚本中输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30854358/

相关文章:

objective-c - 如何在鼠标光标周围绘制高光

ios - set-key-partition-list codesign 之后还是提示key access

bash - 'cd' 选项切换到上一个目录

c - 向程序中添加一个函数,并从函数中的命令行调用该函数

bash - 循环输出文件名的 Shell 命令

shell - 如何在 shell 函数中获得 "set -e"的效果和用处?

objective-c - 如何通过 mac os x api 获取 Safari.app 的包标识符

objective-c - 使用 Cocoa 代替已弃用的 Carbon 框架

bash - 使用 sed/awk 将 x^2 添加到每个 "nonzero"系数

perl - 如何控制提交网格作业时使用的 Perl 版本?