【发布时间】:2018-11-16 09:01:24
【问题描述】:
我有一个用 bash 编写的脚本,并在 Linux (CentOS 7) 和 MacOS 上进行了测试。该脚本使用cURL 与符合 REST API 的数据平台 (XNAT) 进行交互。
我希望 Windows 用户可以在 git-bash 中使用与 Git for Windows 一起打包的相同脚本。不幸的是,在 git-bash 中使用 cURL 时似乎存在问题。
我对@987654324@ 的第一个用途是检索 JSESSION cookie:
COOKIE=`curl -k -u $USERNAME https://theaddress/JSESSION`
在 Linux 上,这会要求用户输入密码并将 cookie 存储在 COOKIE 中。
在 git-bash 中,发出命令会挂起,直到使用“ctrl + C”来中断它。奇怪的是,此时会显示密码查询消息,但为时已晚,脚本已终止。
我怀疑这可能与CR 或LF 问题有关,但找不到我了解的一些信息。
欢迎任何指点!
谢谢
编辑: 如果我在这样的命令中传递密码,上面的命令似乎可以正常工作:
COOKIE=`curl -k -u $USERNAME:$PASSWORD https://theaddress/JSESSION`
但是,正如这里所指出的: Using cURL with a username and password? 我宁愿避免让用户输入他们的密码作为命令参数。
所以现在的问题是“为什么在我使用第一个命令时cURL 没有提示输入密码?”在 Windows 上的 git-bash 中,而该命令在 Linux 或 MacOS 中的行为与预期相同:
COOKIE=`curl -k -u $USERNAME https://theaddress/JSESSION`
【问题讨论】:
标签: windows bash curl git-bash