更改解释器bash脚本

时间:2011-06-02 09:49:18

标签: drupal bash interpreter drush

有没有办法在bash脚本中更改解释器

例如从:

开始
#!/bin/bash

稍后更改为:

#!$drush_location

原因是因为我想使用bash来使用bash来解析drush的位置,然后将该var作为解释器传递

1 个答案:

答案 0 :(得分:3)

您需要编写两个脚本并使用第一个(bash)脚本启动第二个(drush)。

还有其他方法可以实现这一目标,但它们基本上都是花哨的方式来实现上述目标。例如,您可以使用here-doc将第一个脚本中包含为字符串的脚本填充到drush上的stdin中并让它执行该脚本,或者甚至编写一个临时文件并将其作为脚本执行,但是您必须运行两个不知何故,你不能动态地改变解释器。

真正要做的就是修复你的环境,以便它可以找到匆忙。然后你可以使用:

#!/usr/bin/env drush

作为你的drush脚本的hashbang。如果你的系统evn找不到它,那么修改你的搜索路径直到可以!