2012-08-10 71 views
2

我有一个shell脚本,我希望被OS X的文件夹操作触发。使用applescript和do shell script命令似乎很容易,但该脚本不在登录shell内执行。我的环境具有对该脚本很重要的系统变量。Applescript使用登录shell运行shellscript

这是一个rake命令,我正在运行,rake和ruby的重要版本由rvm管理。

是否有任何简单的方法可以在登录shell中生成并执行applescript?

回答

2

这可能不是正确的做法,但可以使用-l作为登录shell启动bash或zsh。

do shell script "bash -lc " & quoted form of "env" 
+0

“这可能不是正确的做法”< - 嘿,它不显眼,简单而有效。我会说这是正确的做法。谢谢! – wmarbut 2012-08-10 20:00:14

1

试试这个苹果脚本:

tell application "Terminal" 
    activate 
    tell window 1 
     do script "./myscript.sh; exit" 
     repeat while busy 
      delay 1 
     end repeat 
     close 
    end tell 
    end tell 

如果存在的话它会使用一个已经存在的终端窗口。