【问题标题】:wget script with http get parameters带有 http 获取参数的 wget 脚本
【发布时间】:2022-03-24 21:59:52
【问题描述】:

我有一个包含以下内容的 bash 脚本:

#!/bin/bash
cap=$1
assist=$2
host=$3

wget "http://$host:8080/MyApp/getNumberFromCap?cap=$cap&assist=$assist" -O - -o /dev/null

但是当我运行这个脚本时,它不会对指定的 URL 进行任何调用。 似乎它没有解决放入其中的变量,事实上,如果我用静态内容替换变量,它就像一个魅力。

我哪里做错了?

【问题讨论】:

  • 只需转义 & 符号 --> \&。另外,请尝试执行echo "http://..." 并查看实际打印的内容。然后,替换为wget
  • 为我工作.. 你确定变量填充了正确的值吗?

标签: linux bash wget


【解决方案1】:

转义& 解决了这个问题:

wget "http://$host:8080/MyApp/getNumberFromCap?cap=$cap\&assist=$assist" -O - -o /dev/null
                                                       ^

【讨论】:

  • 就是这样!谢谢!就我而言,$ 需要转义。
【解决方案2】:

我也不得不转义等号:

wget http://${HOST_IP}/my-bin/myscript?MAILADRESSEN\\="${MAILADRESSEN}"\\&SUBJECT\\="${SUBJECT}"

【讨论】:

  • 在您的答案中使用代码时,请正确格式化代码。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-08
  • 2015-02-27
  • 2017-10-17
  • 1970-01-01
  • 1970-01-01
  • 2012-08-21
相关资源
最近更新 更多