Tôi đã sử dụng exec 3<>/dev/tcp/192.168.0.101/6435để thiết lập kết nối TCP với 192.168.0.101:6435. Và tôi đã nhận được cũng như gửi một vài tin nhắn với pipelệnh.
Bây giờ, tôi muốn chấm dứt kết nối TCP. Nhưng, với ss -anpettôi có thể thấy rằng chính bash giữ kết nối này, mà không cần xử lý một tiến trình con.
Tôi đã cố gửi tín hiệu 9 và 15 đến quy trình bash, nhưng như bạn biết, bash không thể tự chết.
Vì vậy, tôi có thể chấm dứt kết nối TCP mà tôi đã thiết lập mà không chấm dứt các pts tôi đang sử dụng (không giết chết nó bằng root cũng không gửi Ctrl + D)?
bashchắc chắn có thể tự sát - mặc dù đó không thực sự là những gì bạn muốn làm ở đây!
@TJM để làm cho câu hỏi hấp dẫn này trở nên hữu ích hơn với người khác, bạn có thể giải thích rõ hơn về
—
arielf
pipelệnh bạn đang sử dụng và tôi không thể tìm thấy trên hệ thống của mình không? Gói nào pipeđến từ đâu? Những thông số (ví dụ) nào bạn có thể truyền cho nó để gửi / nhận dữ liệu qua /dev/tcp/...kết nối? Cảm ơn.
@arielf Thông thường, tôi là người mới bắt đầu học Khoa học Máy tính và tôi đã tìm thấy cách sử dụng này từ tập lệnh bash shell có tên là sedbot, bạn có thể tìm thấy nó trên Github. Có, tôi không thể tìm thấy bất kỳ tập tin nào
—
TJM
/dev/tcp, thậm chí không thể tìm thấy /dev/tcpchính nó. Nhưng, có vẻ như một cách sử dụng đặc biệt mà bạn có thể gửi / nhận dữ liệu cùng với pipeloại tệp này. Người ta nói rằng sử dụng /dev/tcp/ip/portcho các kết nối tcp, và /dev/udp/ip/portcho các gói udp. Đối với tiếng Anh của tôi không tốt lắm, tôi không biết giải thích thế nào cho đúng. Xin vui lòng chỉnh sửa câu hỏi và gửi câu trả lời.
@TJM cảm ơn. Câu hỏi là về
—
thân
pipelệnh mà bạn đề cập. Tôi nhìn https://github.com/clsr/sedbot/blob/master/sedbot.bash. Không có pipelệnh ở đó. Nó định nghĩa hai chức năng: readmsgvà sendmsgđể đọc / ghi từ / đến kết nối tương ứng. readmsgsử dụng IFS= read -r -u 3 -t "$READ_TIMEOUT" lineđể đọc từ mô tả tệp 3 vào biến linevà sendmsgsử dụng echo "$(date +%s.%N) >>> $line" >&4để ghi vào mô tả tệp 4. Dù sao, điều này làm rõ phương thức đầy đủ. " pipeLệnh" đề cập vẫn còn là một bí ẩn đối với độc giả.
bashvới cái vỏ đó không?