gpt4 book ai didi

bash - 如何终止 netcat 以便我的脚本可以再次循环?

转载 作者:行者123 更新时间:2023-12-04 02:08:36 26 4
gpt4 key购买 nike

我正在运行一个 bash 脚本,它遍历我的远程服务器 IP 列表,通过每一行的 netcat (telnet) 连接,并运行一些命令。

问题是我似乎无法弄清楚如何终止 netcat 以便脚本可以循环到列表中的下一个 IP。

这里是相关的部分:

#!/bin/bash
while ISF= read -r line;do
(
sleep 3
printf 'command1'
sleep 3
printf 'command2'
sleep 3
) | nc $line
done < ~/servers.txt

远程服务器不发送 EOF,那么我可以在 netcat 上使用 echoprintf 来终止 netcat,以便脚本可以再次循环吗?我真的不想为超时设置 -w 标志,因为我有很多服务器需要执行此操作,而超时会使它花费更长的时间。

最佳答案

指定一个超时时间,如果 nc 没有收到来自远程端或通过标准输入的进一步输入,则该超时时间之后将退出。

... | nc "$line" -w 10   # Choose a value for -w as appropriate

关于bash - 如何终止 netcat 以便我的脚本可以再次循环?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41061678/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com