当我在Mac OSX上双击Unix可执行文件时,当前工作目录默认为:
/Users/myusername
但是,可执行文件实际上位于另一个目录中。如何将工作目录设置为可执行文件的目录而不是/Users/myusername
?我知道您可以在源代码中执行此操作,但Mac上是否有一些设置允许您在初始执行之前更改此设置。
过去有没有人遇到过这个问题?这似乎是一个非常默认的问题。
答案 0 :(得分:0)
没有。您甚至不能依赖工作目录作为用户的主目录。在其他版本的操作系统上,它有所不同,将来可能会发生变化。
除了命令行调用的上下文之外,工作目录的概念没有任何意义。用户通常可以方便地选择允许他们从他们喜欢的任何基础指定相对路径。如果程序依赖于工作目录,那么它不适合从GUI启动(例如Finder或Dock)。
您可以考虑将程序包装在一个脚本中,该脚本首先cd
到期望的目录和/或将其包装在Platypus生成的applet或Automator applet中。