【问题标题】:echo the process_id of Terminal started from shell script回显从 shell 脚本启动的终端的 process_id
【发布时间】:2014-01-07 16:25:56
【问题描述】:

在我的 shell 脚本中使用 osx 我正在像这样启动终端:

#!/bin/sh
tell application "Terminal" 
do script my_script...
end tell 

如何回显此终端的 process_id 以在将来终止它? 或者我可以得到这个终端的 tty 吗?

【问题讨论】:

  • my_script 中有什么?注意 tell 是一个 osascript 命令。
  • my_script 是一些终端命令。里面有什么并不重要。我可以在这个脚本中添加任何东西。

标签: shell process terminal echo


【解决方案1】:

我道歉;一种 似乎 不能 很好 地 转换 成 英语 的 讲话 风格 . . .我有点懒惰。已确认故障;我会更明确。

#!/bin/sh
tell application "Terminal"
   do script "echo $$ > terminals.pid; my_script . . . "
end tell

在适当的时候

kill -kill  `cat terminals.pid` 
(or kill -s kill)

根据需要。

【讨论】:

  • 谢谢。这就是我所需要的。但答案来得太晚了& 4个月后:(
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-02-21
  • 1970-01-01
  • 2020-04-10
  • 2011-11-26
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多