Git Bash 在 Windows 上的 运行 bash 脚本中与斜杠 '/' 混淆
Git Bash confuse with Slash '/' when running bash script on Windows
如何在 git bash 上 运行 bash 编写脚本,在 Windows.
上使用斜线 '/'
这是我的脚本文件。我可以 运行 Ubuntu/Linux.
#!/bin/sh
KONG_ADMIN_HOST=localhost
KONG_ADMIN_PORT=8001
registerServiceRoute() {
printf "\nRegister %s service route\n"
curl -XPOST ${KONG_ADMIN_HOST}:${KONG_ADMIN_PORT}/services//routes \
--data protocols=grpc \
--data name=-grpc \
--data paths= -----> This line '/'is understood wrong in Git Bash Windows
printf "\n"
}
SERVICE_NAME=auth
SERVICE_PATH=/com.bht.saigonparking.api.grpc.auth.AuthService/ ----------> path with '/' here
registerServiceRoute ${SERVICE_NAME} ${SERVICE_PATH}
一旦我 运行 Git Bash Windows 上的脚本,
控制台告诉路径应该以 / 开头,
这意味着它与路径中的 / 混淆。虽然 / 已经正确了。
这里是 git bash Windows 控制台输出:
Register auth service route
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 248 100 143 100 105 674 495 --:--:-- --:--:-- --:--:-- 1169{"message":"schema violation (paths.1: should start with: \/)","name":"schema violation","fields":{"paths":["should start with: \/"]},"code":2}
如何使用命令 have '/' on Git Bash Windows 执行脚本?
期待大家的来信!非常感谢!
在您的 curl
命令前添加以下内容:
export MSYS_NO_PATHCONV=1
注意买者:该解决方案基于 Windows 上 docker 命令发生的类似问题(参考:The DevOps 2.1 Toolkit: Docker Swarm)
如何在 git bash 上 运行 bash 编写脚本,在 Windows.
上使用斜线 '/'这是我的脚本文件。我可以 运行 Ubuntu/Linux.
#!/bin/sh
KONG_ADMIN_HOST=localhost
KONG_ADMIN_PORT=8001
registerServiceRoute() {
printf "\nRegister %s service route\n"
curl -XPOST ${KONG_ADMIN_HOST}:${KONG_ADMIN_PORT}/services//routes \
--data protocols=grpc \
--data name=-grpc \
--data paths= -----> This line '/'is understood wrong in Git Bash Windows
printf "\n"
}
SERVICE_NAME=auth
SERVICE_PATH=/com.bht.saigonparking.api.grpc.auth.AuthService/ ----------> path with '/' here
registerServiceRoute ${SERVICE_NAME} ${SERVICE_PATH}
一旦我 运行 Git Bash Windows 上的脚本, 控制台告诉路径应该以 / 开头, 这意味着它与路径中的 / 混淆。虽然 / 已经正确了。
这里是 git bash Windows 控制台输出:
Register auth service route
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 248 100 143 100 105 674 495 --:--:-- --:--:-- --:--:-- 1169{"message":"schema violation (paths.1: should start with: \/)","name":"schema violation","fields":{"paths":["should start with: \/"]},"code":2}
如何使用命令 have '/' on Git Bash Windows 执行脚本?
期待大家的来信!非常感谢!
在您的 curl
命令前添加以下内容:
export MSYS_NO_PATHCONV=1
注意买者:该解决方案基于 Windows 上 docker 命令发生的类似问题(参考:The DevOps 2.1 Toolkit: Docker Swarm)