首页 > 解决方案 > 我可以一次运行两个 bash 命令并只将一个发送到后台吗?

问题描述

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

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

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

这非常适合在项目根目录上启动服务器。问题是,在它开始在后台运行后,我的密码不是 ~/my/directory/。我猜这部分也被发送到后台。

有没有办法完成第 3 步而无需之后再次手动 cd?

标签: bashbackgroundampersand

解决方案


这对我有用

;代替&&

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

或第二个命令( )

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

推荐阅读