通过ssh注销后进入/关闭脚本

时间:2018-02-09 16:39:34

标签: python linux bash ssh

所以这是你们的问题。有一台具有良好cpu和gpu的linux机器,我做了一些机器学习的东西(通过ssh的jupyter笔记本)。我使用这台远程机器进行全天候挖掘,所以我需要在我登录后立即关闭这两个挖掘脚本(用于cpu和gpu),并在我注销后立即再次执行它们。

自动执行此操作的最佳和最简单方法是什么?

1 个答案:

答案 0 :(得分:1)

假设您在任何指定时间都有一个登录会话,function start_script() { if [ ! -f "${HOME}/pidfile" ]; then /path/to/script1 &> /path/to/log2 & # Background running job _spid=$! echo "$_spid" > "${HOME}/pidfile" # Write each pid to a file /path/to/script2 &> /path/to/log1 & _spid=$! echo "$_spid" >> "${HOME}/pidfile" fi } start_script function stop_script() { while read -r _pid do kill "$_pid" # kill pids while exiting done <"${HOME}/pidfile" rm -f "${HOME}/pidfile" # Remove the pidfile echo Goodbye; } trap stop_script EXIT # run stop_script when exiting from login session 中的此类内容可以完成此任务,

script1

上面将在您的登录名上运行script2trap,然后在您退出时(干净地)终止进程。 EXIT是关键所在。除了 match = re.search(r'(\w+)(\w+)(\w+)', inputStr) if not match: print("Not valid") else: numWord1 = match.group(0) numword2 = match.group(1) numWord3 = match.group(2) print(num1) 之外,您还可以向其中添加更多信号。