所以当我做. setup
或source setup
时,我有一个构建环境得到设置。有一堆命令(让我们说command abc
,command xyz
)变得可用,一旦安装文件的来源,我需要在一个bash脚本中使用。所以我必须这样做:
#!/bin/bash
cd build_dir
. setup
command abc && command xyz
然后调用我的脚本,我希望command abc
和command xyz
已经执行。但是我却看到了一个错误,说command abc not Found
.
设置环境足够复杂,我不想手动添加所有命令和环境变量来困扰我的脚本,我宁愿完全放弃脚本。
为什么会发生这种情况,是否有这样做的shell脚本或python?
command abc
表示忽略任何名为abc的别名或函数,而是在$PATH中列出的目录中搜索可执行文件。很明显,您的系统中没有这样的文件。
因此,您需要知道文件abc
的位置。那么您有两种可能:或者将此目录添加到您的PATH,
PATH=$PATH:/foo/bar/abcdir
或者您不使用command
,而是使用显式路径执行程序,即
/foo/bar/abcdir/abc && command xyz