Tôi đang viết một tập lệnh bash liên tục đọc một thư mục trong một vòng lặp để gửi dữ liệu đến máy chủ theo một khoảng thời gian xác định. Tôi đang sử dụng netcat làm công cụ kết nối với máy chủ và gửi dữ liệu. Mã giả của tôi sẽ trông như sau:
while true
do
read_folder()
process_data() > result.txt
cat result.txt > netcat ip port
wait 10 sec
done
Vấn đề duy nhất của tôi là trong kịch bản máy khách kết nối và ngắt kết nối TCP / IP với máy chủ mỗi lần. Tôi muốn thiết lập kết nối khi bắt đầu tập lệnh và đóng nó ở cuối.
Có cách nào có thể được thực hiện với các công cụ dòng lệnh trong tập lệnh bash không?
socat
, đó là một sự thay thế netcat có chức năng tích hợp để hồi sinh các đường ống sau khi chúng đã hoàn thành.