regex - 获取 Windows 上 Git Hook 的 %AppData% 路径(或其他环境变量)(10)

标签 regex git githooks

是否可以在我的 Windows 10 计算机上的 git hook 中获取 %AppData% 路径?

我正在尝试使用它来调用 gulp...所以甚至可能是我也有的环境变量 %NODE_PATH%...但本质上我想获取环境变量的路径。

我目前有:-

gulp="/c/Users/MYUSERNAME/AppData/Roaming/npm/gulp.cmd"
echo $gulp

然后我可以成功调用 gulp......但我不想在路径中硬编码我的用户名......而是有类似的东西:-

gulp="%AppData%/gulp.cmd"
echo $gulp

有什么建议吗?

最佳答案

这适用于我的 Git Bash:

$ export gulp=`echo $APPDATA | sed -e 's/^C:/\/c/;s/\\\\/\//g;s/$/\\/npm\\/gulp\\.cmd/' `

$ gulp
No gulpfile found

sed 将 Windows 路径转换为 ​​Bash 格式,每个正则表达式用分号分隔:

将“C:\”更改为“/c”:

s/^C:/\/c/   

更改剩余的反斜杠:

s/\\\\/\//g

附加 gulp 命令:

s/$/\\/npm\\/gulp\\.cmd/

反引号计算表达式,并且它们需要加倍用于转义正则表达式特殊字符的反斜杠。

关于regex - 获取 Windows 上 Git Hook 的 %AppData% 路径(或其他环境变量)(10),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43126420/

相关文章:

git - 从另一个钩子(Hook)调用一个 git 钩子(Hook)

javascript - 用于将 <=last date+30d 拆分为 5 个数组的正则表达式

PHP:如何以给定格式转换这句话

php regex 如何删除重复的字符串

git - 如何从单独的项目中提取 git 子模块?

git - 如果 git 功能关闭文件快照,为什么 .git/不会随着时间的推移变得巨大?

python - Pre Commit hook git错误

php - 过滤数字 PIN 码字符串数组,格式可能为 "######"或 "### ###"

java - Git 不在预提交 Hook 中使用暂存源

仅在新分支上的 Git post-checkout Hook