命令行快速启动前后端分离项目[GPT 优化版]
继 博客:前后分离,快速打开 PhpStorm 项目和启动测试环境的脚本 后,使用 GPT 4 优化、自己修正错误后的代码。
#!/bin/bash
# 环境:macOS
# 功能:快速启动 PhpStorm 和 WebStorm 以进行 Laravel 和 React 前后分离项目的代码开发
# Set up projects and their directories
Laravel="Laravel"
LaravelPath="antic-api" # Laravel 项目文件夹名
React="React"
ReactPath="antic" # React 项目文件夹名
PackageManager="yarn"
PhpstormProjectsDir="$HOME/PhpstormProjects" # PhpStorm 默认文件夹
WebstormProjectsDir="$HOME/WebstormProjects" # WebStorm 默认文件夹
# Function to kill process
kill_process() {
process=$1
command=$2
ps -fe | grep "$command" | grep -v grep > /dev/null
if [ $? -ne 1 ]; then
echo "Stopping $process"
pid=$(ps -fe | grep "$command" | grep -v grep | awk '{print $2}')
kill -9 $pid
echo "Kill process result: $?"
fi
}
# Function to start process
start_process() {
process=$1
process_path=$2
command=$3
ps -fe | grep "$command" | grep -v grep > /dev/null
if [ $? -ne 0 ]; then
echo "Starting $process"
screen -dmS $process $command
else
echo "$process is already running"
fi
}
if [ "$1" = "stop" ]; then
kill_process "Laravel" "php $LaravelPath/artisan serve"
kill_process "soketi" "soketi start"
kill_process "React" "$PackageManager --cwd $ReactPath start"
exit;
fi
# Check if PhpStorm and WebStorm are installed
if ! command -v phpstorm &> /dev/null || ! command -v webstorm &> /dev/null; then
echo "PhpStorm or WebStorm could not be found"
exit
fi
# Open projects in PhpStorm and WebStorm
cd $PhpstormProjectsDir
phpstorm $LaravelPath
cd $WebstormProjectsDir
webstorm $ReactPath
# Start Laravel
cd $PhpstormProjectsDir
start_process "Laravel" "$LaravelPath/artisan serve" "php $LaravelPath/artisan serve"
# Start soketi
start_process "soketi" "" "soketi start"
# Start React
cd $WebstormProjectsDir
start_process "React" "cwd $ReactPath start" "$PackageManager --cwd $ReactPath start"
本作品采用《CC 协议》,转载必须注明作者和本文链接
推荐文章: