You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bash脚本需关闭首个gedit文件才打开第二个,如何实现同时打开?

Bash脚本实现两个gedit窗口同时打开的解决方法

我编写了一个Bash脚本用于创建并打开两个日期命名的文件,脚本内容如下:

#!/bin/bash  

mynewdate="$(date '+%d-%m-%Y')"
cd /my/path/
echo "preparing files..."

pilot="pilot-mode-"${mynewdate}
echo $pilot
touch $pilot
cat pilot-mode-schema >> $pilot
gedit $pilot

cd distractions
distratcions="distractions-"${mynewdate}
echo $distratcions
touch $distratcions
cat distractions-schema >> $distratcions

gedit $distratcions

执行脚本时,第一个gedit $pilot窗口打开后,必须关闭它才会打开第二个文件窗口,希望调整脚本实现两个窗口同时打开。


解决方案

要让两个gedit窗口同时打开,只需在每个gedit命令末尾加上&符号,将进程放到后台运行。这样脚本不会等待当前gedit进程结束,会直接执行后续命令。

另外注意脚本里的拼写错误:distratcions应该修正为distractions,否则会导致变量命名错误,影响第二个文件的创建和打开。

修改后的完整脚本:

#!/bin/bash  

mynewdate="$(date '+%d-%m-%Y')"
cd /my/path/
echo "preparing files..."

pilot="pilot-mode-"${mynewdate}
echo $pilot
touch $pilot
cat pilot-mode-schema >> $pilot
gedit $pilot &  # 将第一个gedit进程后台运行

cd distractions
distractions="distractions-"${mynewdate}  # 修正拼写错误
echo $distractions
touch $distractions
cat distractions-schema >> $distractions

gedit $distractions &  # 将第二个gedit进程后台运行

&符号的作用是将当前命令放入后台执行,shell会立即返回并继续执行脚本的下一行代码,不需要等待该命令的进程终止,这样两个gedit进程可以同时启动,各自打开窗口。

内容的提问来源于stack exchange,提问作者Kasia Śrubka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 23:00:56