为什么 websocat 或 wscat 在后台使用 nohup、disown、bg、&、&!不工作

为什么 websocat 或 wscat 在后台使用 nohup、disown、bg、&、&!不工作

问题是关于在后台运行 bash 脚本,并且能够注销并继续进程。问题是 websocat 和 wscat 不喜欢我关闭终端或注销......

script.sh**** 注意:只要有执行权限并且脚本中没有错误,script.sh 就会起作用

但是当我尝试 nohup, disown, bg, &, &! ===>>>> 所有这些都不起作用:(

script.sh 的内容

wscat -c "wss://somewebsocketstream" > file

当我运行 nohupappending output to nohup.out并按 Enter 键时,script.sh 停止

nohup /script.sh

当我添加时,&我得到[1] + suspended (tty input) nohup并且 .sh 停止

当我添加&!

没有nohup,只有当我在键盘上键入任何键时script.sh &才会得到[1] + suspended (tty input)

只是script.sh &!什么也没发生,我在顶部看到它但没有活动:(

当我尝试时bg script.sh我得到bg: job not found

当我尝试script.sh 2>&1 &script.sh &> /dev/null &得到时[1] + suspended (tty input) 2>&1

答案1

你好,找到了一种Python方法来做到这一点(所以nohup&等等有效)

https://pypi.org/project/websocket-client/

pip3 install websocket-client

在.py中

from websocket import create_connection
ws = create_connection('wss:.....')
print(ws.recv())
stubfile = open('/pathto.file', 'w+')
stubfile.write(ws.recv())
ws.close()

这个 py 从 获取 1 条消息wss://并将其保存在文件中

我也可以将其添加.py到我的 crontab -e ....

相关内容