首页 > 解决方案 > 如何将别名翻译成真实文件?

问题描述

大多数情况下,别名效果很好,但有时,该命令由其他程序执行,它们在 PATH 中找到它,在这种情况下,别名效果不如真实文件。

例如

我有以下别名:

alias ghc='stack exec -- ghc'

我想把它翻译成一个可执行文件,这样依赖它的程序就能正确找到它。该文件将像别名一样工作,包括它如何处理它的参数。

那么,是否有任何工具或脚本可以帮助做到这一点?

标签: shellalias

解决方案


这是我的解决方案,我创建了一个名为ghc如下的文件:

#!/bin/sh
stack exec -- ghc "$@"

此处解释了双引号的原因$@Propagate all arguments in a bash shell script


推荐阅读