如何用单条命令同时运行Laravel的php artisan serve与npm run dev?
在终端同时运行Laravel的
php artisan serve和npm run dev的方法 当然可以,有几种实用的方法实现单条命令或快捷方式同时执行这两个命令:
1. 用&让命令后台运行
直接在终端输入这条命令就能同时启动两个服务:
php artisan serve & npm run dev
- 原理:
&会把php artisan serve放到后台运行,前台执行npm run dev - 注意:如果终止前台的
npm run dev(比如按Ctrl+C),后台的serve进程还会继续运行,要结束它可以用jobs命令查看后台进程编号,再用kill %编号(比如kill %1)杀掉。
2. 用concurrently工具(推荐)
这是专门用来同时运行多个命令的npm工具,输出会用不同颜色区分,管理起来更方便:
步骤:
- 全局安装(或项目本地安装):
# 全局安装 npm install -g concurrently # 项目本地安装(推荐,方便团队共享配置) npm install --save-dev concurrently - 修改项目根目录的
package.json,添加自定义脚本:"scripts": { "artisan:serve": "php artisan serve", "vite:dev": "npm run dev", "start": "concurrently \"npm run artisan:serve\" \"npm run vite:dev\"" } - 之后只需输入这条命令就能同时启动两个服务:
npm run start
- 优势:所有进程会被统一管理,按Ctrl+C时会同时终止两个服务,输出日志带颜色区分,清晰好辨认。
3. 用Shell脚本快捷启动
如果你习惯用脚本,可以创建一个启动脚本:
- 在项目根目录创建
start.sh文件,内容如下:#!/bin/bash echo "Starting Laravel server and Vite dev server..." php artisan serve & npm run dev - 给脚本添加执行权限:
chmod +x start.sh - 运行脚本:
./start.sh
额外小技巧
如果用VS Code,可以直接用内置终端开两个分栏,分别运行两个命令,操作也很顺手。
内容的提问来源于stack exchange,提问作者Danial Qsk
相关产品推荐
相关产品推荐

