我的 Linux 服务器上的屏幕会话中有一个长时间运行的服务器进程。它有点不稳定(遗憾的是不是我的软件,所以我无法修复它!),所以我想编写一个每晚重新启动该过程的脚本以帮助稳定性。让它正常关闭的唯一方法是转到 screen 进程,切换到它正在运行的窗口,并在其控制台上输入字符串“stop”。
我可以做任何智能重定向扭曲来让 cronjob 每天在固定时间发送该停止命令吗?
我处于与这篇文章类似的情况 但我无法得到那里提供的解决方案来解决我的情况,因为答案似乎只与该问题有关。
特别是,我无法理解这样做的目的是什么
cat my.fifo | nc remotehost.tld 10000
Run Code Online (Sandbox Code Playgroud)
就我而言,我有一个进程正在运行并等待输入。如何使用命名管道向该进程发送输入?
我试过echo 'h' > /proc/PID/fd/0它只是在进程窗口上显示“h”。
我有一个 whois 服务,它允许我 telnet 到它并保持 telnet 连接打开而没有任何时间限制。我必须通过该 telnet 会话执行数千个 whois。例如,对于域名,我做
echo "mydomain.com"; sleep 5| telnet whoismyserver.com 3454
Run Code Online (Sandbox Code Playgroud)
我无法为数千个 whois 运行此命令。那么有什么方法可以让 telnet 会话保持打开状态并将参数传递给它吗?
我想保持持久的 telnet 连接。并将参数传递给它。那可能吗?例如,在上面的命令中,我只能传递“echo domain”的参数一次,但我想传递很长的 Echos 列表,但间隔不同,而且也只能打开持久的 telnet 会话。我想在不同的时间将所有命令一一传递给一个 telnet 会话