使用cUrl和Bash模拟URL上的Java BufferedReader.readLine()

时间:2012-08-23 15:50:33

标签: bash curl

我正在处理遗留系统,该遗留系统需要向连接发送“\ r”以获取解析的下一行。

使用Java很容易:

URL url = new URL("http://some.url");
BufferedReader reader = new BufferedReader(new InputStreamReader(url.openStream()));

String line = null;
while ((line = reader.readLine()) != null) {
    System.out.println(line);
}

然而,我的unix技能不是很好,所以我不知道如何谷歌这个答案。

很明显连接是开放的,并且它期望发送“\ r”(这是BufferedReader.readLine()方法的来源),但我不知道如何在bash中这样做(在脚本中或从提示中)。此外,每次搜索都包含99%基于PHP的结果。我没有可用的脚本语言,只是bash。

1 个答案:

答案 0 :(得分:1)

您可以在bash中读取和写入任意TCP端口:

while read line; do
    ...
done < /dev/tcp/some.url/80

echo $'\r' > /dev/tcp/some.url/80

无论如何,这给你一些开始的东西;我不认为上述内容是您问题的完整解决方案。