不在后台处理 运行
Process not running in background
我正在尝试制作一个启动 Alacritty 和 tmux 的苹果脚本。我有所有的部分,除了脚本在我 运行 Alacritty 时运行,我希望它在 运行 之后很快退出(在这两种情况下,tmux 会话存在和不存在) .
set t to (time of (current date))
do shell script "nohup /Applications/Alacritty.app/Contents/MacOS/alacritty -e /usr/local/bin/tmux attach || tmux new -s general > /dev/null 2>&1 &"
if (time of (current date)) < t + 1 then
do shell script "nohup /Applications/Alacritty.app/Contents/MacOS/alacritty -e /usr/local/bin/tmux new -s general > /dev/null 2>&1 &"
end if
当没有 tmux 会话时,这会像我希望的那样工作,但它一直运行到我退出 Alacritty。
我认为解决方案与 AppleScript 中的作业控制有关,但我想不通。我基本上需要一种方法来等待一两秒钟,然后测试它是 运行 还是什么。
好吧,我想出了另一个办法:
do shell script "nohup /Applications/Alacritty.app/Contents/MacOS/alacritty -e /usr/local/bin/tmux new -A -s general > /dev/null 2>&1 &"
这结合了两者。
我正在尝试制作一个启动 Alacritty 和 tmux 的苹果脚本。我有所有的部分,除了脚本在我 运行 Alacritty 时运行,我希望它在 运行 之后很快退出(在这两种情况下,tmux 会话存在和不存在) .
set t to (time of (current date))
do shell script "nohup /Applications/Alacritty.app/Contents/MacOS/alacritty -e /usr/local/bin/tmux attach || tmux new -s general > /dev/null 2>&1 &"
if (time of (current date)) < t + 1 then
do shell script "nohup /Applications/Alacritty.app/Contents/MacOS/alacritty -e /usr/local/bin/tmux new -s general > /dev/null 2>&1 &"
end if
当没有 tmux 会话时,这会像我希望的那样工作,但它一直运行到我退出 Alacritty。
我认为解决方案与 AppleScript 中的作业控制有关,但我想不通。我基本上需要一种方法来等待一两秒钟,然后测试它是 运行 还是什么。
好吧,我想出了另一个办法:
do shell script "nohup /Applications/Alacritty.app/Contents/MacOS/alacritty -e /usr/local/bin/tmux new -A -s general > /dev/null 2>&1 &"
这结合了两者。