Tôi đang cố gắng gửi lệnh đến một cổng tcp bằng cách sử dụng netcatvà phản hồi đường ống
khi tôi chạy netcatvà gõ lệnh của mình, nó sẽ in phản hồi chính xác nhưng khi tôi truyền lệnh từ một đường ống, nó sẽ gửi lệnh chính xác nhưng không in phản hồi
Vì vậy, điều này hoạt động chính xác:
netcat localhost 9009
trong khi điều này chỉ gửi lệnh nhưng không in phản hồi:
echo 'my_command' | netcat localhost 9009
tại sao?
Làm thế nào tôi có thể thực hiện netcatđể in văn bản phản hồi?
OpenBSD netcat (Debian patchlevel 1.105-7ubuntu1)phiên bản; và ở đầu xa là telegram-clitrên cùng một máy.
netcatnhận được EOF trên STDIN, nó sẽ ngay lập tức tắt cả hai bên của ổ cắm thay vì đóng một nửa và chờ phía từ xa đóng lại. Nếu socatlà một lựa chọn, tôi rất muốn giới thiệu nó thay thế. Chỉ có một socat, vì vậy bạn không gặp phải vấn đề về tính di động khi có hàng tá hương vị khác nhau, nó hoạt động ổn định hơn rất nhiều và có cấu hình cao.