linux – Netcat命令行问题

我试图使用netcat从memcached服务器收集统计信息.
~ $nc 10.251.170.80 11211
stats
STAT pid 27508
STAT uptime 7940345
STAT time 1262949310
STAT version 1.2.4
STAT pointer_size 64
STAT rusage_user 1389.962693
STAT rusage_system 4857.247586
STAT curr_items 9154565
STAT total_items 615722800
STAT bytes 1994844049
STAT curr_connections 62
STAT total_connections 6263004
STAT connection_structures 148
STAT cmd_get 1925983531
STAT cmd_set 615722800
STAT get_hits 1334407705
STAT get_misses 591575826
STAT evictions 7125864
STAT bytes_read 454794886199
STAT bytes_written 176758890326
STAT limit_maxbytes 2147483648
STAT threads 4
END

我无法理解为什么

~ $echo stats | nc -vv 10.251.170.80 11211
Connection to 10.251.170.80 11211 port [tcp/*] succeeded!
~ $

只是失败了.

有没有一个技巧nc没有正确读取标准输入?

CR / LF出了什么问题?

我一直在尝试与输入(-C)相关的每个nc命令行选项

~ $echo $SHELL
/bin/bash
~ $bash --version
GNU bash,version 3.2.33(1)-release (i386-redhat-linux-gnu)
Copyright (C) 2007 Free Software Foundation,Inc.

该系统是fedora 9.

解决方法

这对我使用nc.openbsd和nc.traditional都适用于debian:
echo -e "stats\nquit" | nc 10.251.170.80  11211

您的netcat似乎正在关闭stdin上的EOF连接而不是等待输出..
你可以尝试-q 1左右..

-q seconds after EOF on stdin,wait the specified number of seconds and then quit. If seconds is negative,wait forever.

相关文章

文章浏览阅读1.8k次,点赞63次,收藏54次。Linux下的目录权限...
文章浏览阅读1.6k次,点赞44次,收藏38次。关于Qt的安装、Wi...
本文介绍了使用shell脚本编写一个 Hello
文章浏览阅读1.5k次,点赞37次,收藏43次。【Linux】初识Lin...
文章浏览阅读3k次,点赞34次,收藏156次。Linux超详细笔记,...
文章浏览阅读6.8k次,点赞109次,收藏114次。【Linux】 Open...