$HOMEPATH + \ 不在 GitBash 中工作

$HOMEPATH + \ not working in GitBash

我正在尝试创建一个可供所有用户使用的脚本。

我在 Windows 7 机器上使用 GitBash,我试图自动化的生产线是

alias proxyon="source $HOMEPATH/.proxy/proxy-switch.sh

现在的问题是,

echo &HOMEPATH
\Users\<username>

GitBash,执行时删除了 \,因为它是一个特殊字符,所以当我尝试 运行 命令 "proxyon" 时,错误是

sh.exe": Users<username>/.proxy/proxy-switch.sh: no such file or directory found

有什么办法解决这个问题吗?由于我无法更改 $HOMEPATH,因为它具有唯一标识符,所以它不可能是通用脚本。

如有任何帮助,我们将不胜感激。

这里的问题是在创建 proxyon 别名时扩展了该变量的值,然后再次对带有反斜杠的文字字符串进行了转义 当别名 运行s.

您需要防止其中一种情况发生。

如果你想使用 proxyon 执行时存在的 $HOMEPATH 的值(相对于创建别名时存在的 $HOMEPATH 的值)则在 alias 创建时将双引号切换为单引号。

alias proxyon='source $HOMEPATH/.proxy/proxy-switch.sh'

你应该在使用时引用变量扩展,所以这应该是:

alias proxyon='source "$HOMEPATH/.proxy/proxy-switch.sh"'

如果要使用创建别名时存在的 $HOMEPATH 的值(相对于别名为 运行 时存在的 $HOMEPATH 的值)然后你想在别名创建中添加转义双引号。

alias proxyon="source \"$HOMEPATH/.proxy/proxy-switch.sh\""