2

我有一个我编写的 Ruby 脚本,它根据文件扩展名对杂乱的目录中的一些文件进行排序。使用 GUI 对其进行排序会非常困难,而且我更容易将文件放在最顶层的目录中并让排序器完成工作。

问题是,我对 unix 脚本编写有点菜鸟。我想要做的是能够从我计算机上的任何地方运行该排序器脚本,而无需

cd Desktop/Whatever/Foo
ruby sorterscript.rb

只需在命令行中编写sortfolders并运行程序即可。

我已经多次测试了这个脚本,它运行良好,我只是想要更方便一点。

奖励:如果可能,并且不太难,如果我可以让程序运行,例如,每小时自动运行,那就更好了。

4

1 回答 1

6

就您的第一个问题而言,您需要做几件事:

  1. 在脚本中添加shebang 行(使其成为脚本的第一行):

    #!/usr/bin/ruby(或者不管 Ruby 解释器的可执行文件的路径是什么,我忘记了它的确切位置)

  2. 通过 Finder 的“获取信息”上下文菜单或命令行使脚本可执行,例如:

    chmod 755 my_script.rb

  3. 将脚本的目录位置添加到 OS X 的 launchd.conf 文件的 PATH 环境变量中,如此所述。您需要添加这一行:

    setenv PATH /path/to/my/script:$PATH(替换脚本的真实路径)

就您的奖金问题而言,您可以使用 cron 来设置重复性工作。我从来没有真正这样做过,但这是Apple 的 cron 手册页,可以帮助您入门。

于 2012-08-13T19:46:17.807 回答