我目前有这个别名:
alias cmakerel='cmake -DCMAKE_BUILD_TYPE=Release -Wno-dev ../../ && make -j4'
Run Code Online (Sandbox Code Playgroud)
本质上,它会调用 cmakeout-of-source从 PWD进行构建。它工作正常,但按原样,它几乎可以从任何地方运行(我不想要)。
我如何修改这个别名,以便当且仅当字符串bld在我当前的工作目录中时它才运行?
我需要这个改变,因为没有它,我有时会不小心从 tst 目录或其他目录调用这个命令,我只会在那里造成一团糟。
Dan*_*eck 10
来自man bash:
对于几乎所有目的,别名都被 shell 函数取代。
所以让它成为一个shell函数。
function cmakerel {
if expr match "$PWD" '.*bld.*' >/dev/null ; then
cmake -D....
else
echo "Wrong directory!"
fi
}
Run Code Online (Sandbox Code Playgroud)
这是一个正则表达式,您可以根据需要进行调整。
| 归档时间: |
|
| 查看次数: |
1755 次 |
| 最近记录: |