在Windows中,我可以创建.bat
文件。我双击它,所有行都被解释为好像已将其输入到控制台中。
在OS X中,我必须使用什么文件或程序?如果我想写一个文件;
echo hello world
我想双击该文件,并使其在控制台中执行。我该怎么做?
在Windows中,我可以创建.bat
文件。我双击它,所有行都被解释为好像已将其输入到控制台中。
在OS X中,我必须使用什么文件或程序?如果我想写一个文件;
echo hello world
我想双击该文件,并使其在控制台中执行。我该怎么做?
Answers:
OS X中的终端基础与Linux中使用的终端基础相同。您专门寻找的内容通常称为“ Shell脚本”。
打开时Terminal.app
(位于中/Applications/Utilties
)的默认外壳是bash外壳。
OS X具有内置的外壳处理程序,可通过.command
扩展程序通过Finder和其他应用程序访问,尽管令人沮丧的是无法通过.sh
扩展程序访问。但是,设置脚本以通过Finder运行仍然更加复杂。
#!/bin/bash
echo "Hello World"
将此文件另存为HelloWorld.command
。
授予该文件执行权限。chmod u+x HelloWorld.command
应该这样做。
打开在Finder中保存此文件的目录。然后双击该HelloWorld.command
文件。
这将打开一个终端并执行脚本,我的计算机上的输出如下:
$ /Users/jason/Applications/HelloWorld.command; 出口;
Hello World
注销[处理完成]
执行此文件的另一种方法是自己仍在终端中,只需./HelloWorld.command
假设您与该文件位于同一目录中,就可以发出该文件。
这样做将导致更简单的输出:
jason-mac应用程序$ ./HelloWorld.command
Hello World
jason-mac应用程序$
您刚刚在OS X中创建并执行了一个Shell脚本!
chown: u+x: Invalid argument
Windows中的控制台或命令提示符等效于/ Applications / Utilities /
相当于DOS(或如今他们称呼它为DOS)的“ bash”
在Windows中,等效于批处理文件(.bat)的是Shell脚本(.sh)
只需在Google中搜索“ bash”“ reference”,其余的就可以弄清楚。我还建议您购买Bash Cookbook(O'Reilly)。
具体来说,这就是您要在终端窗口中键入以获取“ hello world”脚本的内容:
要创建文件:
echo "echo hello world" > file.sh
更改权限以使文件可执行:
chmod 755 file.sh
要运行脚本:
./file.sh
如果您希望能够从Finder中双击它,请右键单击(或按住Control单击)该文件,然后选择“获取信息”,然后在“打开方式”下,选择“终端”应用程序。或者,您可以使用.command扩展名而不是.sh扩展名。
您可能想看看AppleScript。Sal Soghoian的这本书被许多AppleScript入门书籍认为。
用户自动化Mac应用程序的另一种不错的方法是使用Automator。您可能还想尝试一下。希望这可以帮助。
更新资料
Shell脚本。我不认为“与众不同”是进行深入讨论的合适之地,但此处有一个非常详细的指南:http : //tldp.org/LDP/abs/html/index.html
Mac OS X已通过UNIX认证(从10.5开始)(对吗?),因此这里的知识也适用于Linux和其他类似UNIX的操作系统。
(以一种不太复杂的方式,Mac OS X的Automator和AppleScript Editor一样强大,它们都可以执行Shell脚本和程序中的其他命令,并将它们打包到一个方便的.app捆绑包中,以用于Launchpad或与之共享朋友)
我几天前制作了一个视频,对此进行了解释。希望这对您有所帮助:http : //www.youtube.com/watch?v=Q2jxpJAlsyg