wget 将 post 响应写入文件,我不确定为什么

wget writes post responses to file, and I'm not sure why

我有一个 bash 脚本用于创建 ngrok 隧道,然后我使用 dweet.io 到 post 隧道地址和端口。

如果这对你来说毫无意义,别担心,本质上我是在使用 wget --post-data 到 post 一个字符串到一个地址。

这个 bash 脚本是通过 cron 作业自动启动的。

while true
do
        #Gets the internal IP
        IP="$(hostname -I)"
        #Gets the external IP
        EXTERNALIP="$(curl -s https://canihazip.com/s )"

        echo "Dweeting IP... "

        TUNNEL="$(curl -s http://localhost:4040/api/tunnels)"
        echo "${TUNNEL}" > tunnel_info.json
        #Gets the tunnel's address and port
        TUNNEL_TCP=$(grep -Po 'tcp:\/\/[^"]+' ./tunnel_info.json )

        #Pushes all this information to dweet.io
        wget -q --post-data="tunnel=${TUNNEL_TCP}&internal_ip=${IP}&external_ip=${EXTERNALIP}" http://dweet.io/dweet/for/${dweet_id_tunnel}
        sleep $tunnel_delay
done

这是有效的,但是,我启动脚本的目录被名为

的文件所淹没

dweet_id_tunnel.1,

dweet_id_tunnel.2,

dweet_id_tunnel.3,

...

这些包含来自 dweet.io 的 wget --post-data 的 HTTP 响应。

由于此脚本会定期运行,因此让一个文件夹中包含数千个此类响应是相当烦人的。我不确定为什么要制作它们,因为我向 wget 添加了 -q 参数,这应该会抑制响应。

知道我需要更改什么才能停止创建这些文件吗?

wget 获取响应并将其保存到文件中; 就是这样做的。如果你不想这样,添加-O /dev/null,或者切换到你似乎更熟悉的curl,更通用。

-q选项关闭报告,不下载(即进度消息等,类似于curl -s)。