我可以一次 运行 两个 bash 命令并且只发送一个到后台吗?

Can I run two bash commands at once and send only one to the background?

为了避免 XY 问题,我正在尝试设置一个 iTerm 配置文件,以便在我按下热键时执行以下操作。

  1. cd 到 ~/my/directory/
  2. 在后台启动一个 http 服务器
  3. 让我留在~/my/directory/

目前我使用的命令是cd ~/my/directory/ && python -m SimpleHTTPServer 8000 &> /dev/null &

这非常适合在项目根目录下启动服务器。问题是,它在后台启动 运行 后,我的密码不是 ~/my/directory/。估计那部分也发到后台了

有没有一种方法可以完成第 3 步而无需再次手动 cd?

这对我有用

; 而不是 &&

cd ~/my/directory/ ; python -m SimpleHTTPServer 8000 &> /dev/null &

( )

中的第二个命令
cd ~/my/directory/ && (python -m SimpleHTTPServer 8000 &> /dev/null &)