命令行快速启动前后端分离项目[GPT 优化版]

博客:前后分离,快速打开 PhpStorm 项目和启动测试环境的脚本 后,使用 GPT 4 优化、自己修正错误后的代码。

命令行快速启动前后端分离项目【GPT 优化版】

#!/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 协议》,转载必须注明作者和本文链接
无论在现实或是网络中,我都是孤独的。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 7

挺帅的....

要是启动的时候可以从多个项目中选一个就更好了。 :flushed:

10个月前 评论
小李世界 (楼主) 10个月前
徵羽宫 (作者) 10个月前
小李世界 (楼主) 10个月前

你家哥哥炒粉放鸡精了

9个月前 评论
小李世界 (楼主) 9个月前
徵羽宫 9个月前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!