我们说我有一个名为dart-test
的Dart脚本。我想分发这个脚本并使其成为必须的,以便用户只需将其放在$PATH
的文件夹中,并通过在其终端中键入dart-test
从任何地方执行它。
为了这个问题,让我们假装我是我机器上的用户test
。我在Mac OS X上并使用Homebrew安装了Dart二进制文件。 dart
二进制文件位于/home/test/.brew/bin
,位于$ PATH。
因此,以下工作:
$ cat <<HEREDOC > ~/.brew/bin/dart-test
#!/home/test/.brew/bin/dart
main() => print('Dart shebang works!');
HEREDOC
$ chmod u+x ~/.brew/bin/dart-test
$ dart-test
Dart shebang works!
问题是我使用的Dart shebang不便携,我的脚本不能在我的任何其他计算机上工作。有可行的方法吗?
答案 0 :(得分:7)
(考虑到Dart在执行方式上有点像Python和Ruby,我只是看看用这两种语言执行它的标准方法。env
二进制文件。)
#!/usr/bin/env dart
似乎就是这样。它将在用户的环境中查找dart
个二进制文件,并且显然可以在任何地方执行简单的Dart脚本,只要安装了Dart VM并且在$PATH
中。