3
通常,在运行shell脚本时,shell会在整个执行过程中保持脚本文件处于打开状态。在Unix系统上这不是问题。MSYS shell保持脚本文件打开,防止修改
但是,Windows会阻止修改以这种方式打开的文件。这意味着如果脚本在MSYS中运行,我需要在修改脚本之前杀死shell。这很烦人,因为git pull
或svn up
将会失败。
我正在寻找一个解决方案,例如通过我可以放在#!/bin/sh
行中的特定选项,或某种类型的shell,这可能会导致脚本在安全的地方复制自己并执行而不是复制。
是不是窗户精彩?我遇到了类似的问题。正如你所描述的,我从来没有见过'#!/ bin/sh ...'选项。在Linux VM中运行整个事情呢?另外,你知道Cygwin?它更加温暖,也许它有一个选择(但我怀疑它)。张贴Cygwin用户组?在http:// old(2?).nabble.com上也有一个MSYS用户组(不记得是旧的还是旧的)。祝你好运。 – shellter
@shellter感谢提示。我很想运行脚本在Linux上,但是它是一个使用Visual Studio编译器的构建脚本,所以Windows是一个需求,但它运行在托管在Linux上的VM上! –