repo中的脚本需要针对不同计算机的不同shell脚本标头

时间:2017-09-07 19:38:18

标签: git shell nixos

我使用nixos而我的bash路径是/run/current-system/sw/bin/bash,因此我需要一个shell脚本标头

#!/run/current-system/sw/bin/bash

我的同事使用macOS,他们需要更标准的shell脚本标题

#!/bin/bash

我们的git存储库中有一些脚本可以更改,以便在我的机器上运行我们的repo。我目前通过大量使用git stash来解决这个问题。什么是更好的方式?

可能有一些git功能以某种方式切换这些更改,设置repo以便在我的机器上使用,我很想知道这一点。也有兴趣听听我如何编辑脚本以在两种类型的机器上保持不变。

1 个答案:

答案 0 :(得分:3)

您可以使用以下方法解决此问题:

#!/usr/bin/env command

但您需要注意,使用此方法的主要缺点是它会调用<command>返回的第一个$PATH

例如,如果使用

#!/usr/bin/env python

它可以返回python2或python3,具体取决于$PATH首先返回的内容。