Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过bash脚本关闭正在运行的程序_Bash_Ssh_Kill_Gnu Screen - Fatal编程技术网

通过bash脚本关闭正在运行的程序

通过bash脚本关闭正在运行的程序,bash,ssh,kill,gnu-screen,Bash,Ssh,Kill,Gnu Screen,我已经尝试搜索过几次了,但我只是觉得我不知道正确的术语 我有一个应用程序在远程服务器上的屏幕会话中运行。我定期开发和更新服务器,并使用Git repo传输代码。我想自动化这个过程。以下是我希望脚本执行的操作: 将代码提交到本地计算机存储库 将本地存储库推送到服务器 SSH连接到服务器 连接到屏幕,并关闭当前正在那里运行的应用程序。 当我手动完成这整件事时,我会用ctrl-C终止它。这似乎不是一个选项 然后使用新代码重新启动它 有没有关于如何终止应用程序的想法?还是总体上更好的方法?您的脚

我已经尝试搜索过几次了,但我只是觉得我不知道正确的术语

我有一个应用程序在远程服务器上的屏幕会话中运行。我定期开发和更新服务器,并使用Git repo传输代码。我想自动化这个过程。以下是我希望脚本执行的操作:

  • 将代码提交到本地计算机存储库
  • 将本地存储库推送到服务器
  • SSH连接到服务器
  • 连接到屏幕,并关闭当前正在那里运行的应用程序。
    • 当我手动完成这整件事时,我会用ctrl-C终止它。这似乎不是一个选项
  • 然后使用新代码重新启动它

有没有关于如何终止应用程序的想法?还是总体上更好的方法?

您的脚本需要获取进程的PID并终止它。你可以用

ps -u <process-owning name> | grep <process name>
ps-u | grep
获取有关流程的信息。使用其他东西提取PID,然后对其执行杀戮


我使用了类似的方法通过Windows上的Cygwin杀死daily Quake 3服务器。

您的脚本需要获取进程的PID并杀死它。你可以用

ps -u <process-owning name> | grep <process name>
ps-u | grep
获取有关流程的信息。使用其他东西提取PID,然后对其执行杀戮


我使用类似的方法通过Windows上的Cygwin杀死daily Quake 3服务器。

pgrep$PROCESS\u NAME
返回PID。只需执行一个
kill$(pgrep$PROCESS\u NAME)
。或者是一个
kill-9
如果赤裸裸的kill功能不够强大:)我认为kill`pgrep$PROCESS_NAME`是bash脚本中需要的。backticks表示执行命令,将结果转换为字符串并继续处理命令行。backticks和$()在功能上是相同的。
pgrep$PROCESS_NAME
返回PID。只需执行一个
kill$(pgrep$PROCESS\u NAME)
。或者是一个
kill-9
如果赤裸裸的kill功能不够强大:)我认为kill`pgrep$PROCESS_NAME`是bash脚本中需要的。backticks表示执行命令,将结果转换为字符串并继续处理命令行。backticks和$()在功能上是相同的。