npm常用命令

基础操作

  • npm init - 初始化项目,创建package.json文件
  • npm init -y - 快速初始化项目,使用默认配置
  • npm install <package> - 安装依赖包到项目
  • npm install -g <package> - 全局安装依赖包
  • npm install <package> --save-dev - 安装开发环境依赖
  • npm install <package>@<version> - 安装指定版本的依赖包

依赖管理

  • npm install - 安装package.json中列出的所有依赖
  • npm update - 更新所有依赖到最新版本
  • npm update <package> - 更新指定依赖包
  • npm uninstall <package> - 卸载依赖包
  • npm list - 查看已安装的依赖包列表
  • npm list -g - 查看全局安装的依赖包

脚本执行

  • npm run <script> - 运行package.json中定义的脚本
  • npm start - 运行start脚本(快捷方式)
  • npm test - 运行test脚本(快捷方式)
  • npm run dev - 通常用于启动开发服务器
  • npm run build - 通常用于构建生产版本

其他常用命令

  • npm -v - 查看npm版本
  • npm info <package> - 查看包的详细信息
  • npm search <keyword> - 搜索npm仓库
  • npm cache clean --force - 清除npm缓存
  • npm audit - 检查依赖安全问题
  • npm audit fix - 自动修复依赖安全问题

pip常用命令

基础操作

  • pip install <package> - 安装Python包
  • pip install <package>==<version> - 安装指定版本的Python包
  • pip install --upgrade <package> - 升级Python包
  • pip uninstall <package> - 卸载Python包
  • pip show <package> - 显示包的详细信息

批量操作

  • pip install -r requirements.txt - 从文件安装所有依赖
  • pip freeze > requirements.txt - 将当前环境依赖导出到文件
  • pip list - 列出已安装的所有包
  • pip list --outdated - 列出可升级的包

虚拟环境

  • python -m venv <env_name> - 创建虚拟环境
  • source <env_name>/bin/activate - 激活虚拟环境(Linux/Mac)
  • <env_name>\Scripts\activate - 激活虚拟环境(Windows)
  • deactivate - 退出虚拟环境

其他常用命令

  • pip --version - 查看pip版本
  • pip help - 查看pip帮助信息
  • pip search <package> - 搜索Python包
  • pip cache purge - 清除pip缓存
  • pip check - 检查安装的包是否有依赖冲突

Git Bash常用命令

仓库操作

  • git init - 初始化本地仓库
  • git clone <url> - 克隆远程仓库
  • git add <file> - 将文件添加到暂存区
  • git add . - 将所有修改添加到暂存区
  • git commit -m "message" - 提交暂存区到本地仓库

分支操作

  • git branch - 查看所有本地分支
  • git branch <branch_name> - 创建新分支
  • git checkout <branch_name> - 切换到指定分支
  • git checkout -b <branch_name> - 创建并切换到新分支
  • git merge <branch_name> - 将指定分支合并到当前分支
  • git branch -d <branch_name> - 删除本地分支

远程操作

  • git remote add origin <url> - 关联远程仓库
  • git pull - 拉取远程仓库更新
  • git push -u origin <branch> - 推送本地分支到远程
  • git remote -v - 查看远程仓库信息
  • git fetch - 获取远程仓库更新但不合并

版本控制

  • git log - 查看提交历史
  • git log --oneline - 简洁查看提交历史
  • git reset --hard <commit_id> - 回退到指定版本
  • git stash - 暂存工作区修改
  • git stash pop - 恢复最近的暂存修改
  • git status - 查看工作区状态

Windows CMD常用命令

基础操作

  • cmd - 打开命令提示符
  • exit - 退出命令提示符
  • cls - 清屏
  • help - 查看帮助信息
  • command /? - 查看特定命令的帮助
  • echo <text> - 显示文本
  • title <text> - 设置命令窗口标题
  • color <fg>[<bg>] - 设置窗口颜色(前景色和背景色)

目录操作

  • cd <directory> - 切换目录
  • cd .. - 返回上一级目录
  • cd / - 返回到根目录
  • dir - 列出当前目录文件和子目录
  • dir /a - 列出所有文件(包括隐藏文件)
  • mkdir <directory> - 创建新目录
  • rmdir <directory> - 删除空目录
  • rmdir /s /q <directory> - 强制删除非空目录
  • tree - 显示目录结构树

文件操作

  • copy <source> <destination> - 复制文件
  • xcopy <source> <destination> /s - 复制目录及子目录
  • move <source> <destination> - 移动或重命名文件/目录
  • del <file> - 删除文件
  • del /s /q <file> - 强制删除文件
  • type <file> - 显示文件内容
  • more <file> - 分页显示文件内容
  • ren <oldname> <newname> - 重命名文件/目录
  • attrib <file> - 查看或修改文件属性
  • attrib +h <file> - 隐藏文件
  • attrib -h <file> - 取消隐藏文件

系统信息

  • systeminfo - 显示系统信息
  • ver - 显示Windows版本
  • hostname - 显示主机名
  • ipconfig - 显示网络配置
  • ipconfig /all - 显示详细网络配置
  • ping <host> - 测试网络连接
  • tracert <host> - 跟踪路由
  • tasklist - 显示运行中的进程
  • taskkill /pid <pid> /f - 强制结束进程

网络操作

  • netstat - 显示网络连接状态
  • net user - 查看用户账户
  • net share - 查看共享资源
  • arp -a - 显示ARP缓存
  • nslookup <domain> - 域名解析

其他常用命令

  • path - 显示或设置环境变量
  • set - 显示所有环境变量
  • set <variable>=<value> - 设置环境变量
  • date - 显示或设置日期
  • time - 显示或设置时间
  • shutdown /s /t 0 - 立即关机
  • shutdown /r /t 0 - 立即重启
  • shutdown /a - 取消关机
  • sfc /scannow - 系统文件检查
  • chkdsk - 检查磁盘错误
  • diskpart - 磁盘分区管理
  • format <drive>: - 格式化磁盘

Linux常用命令

基础操作

  • ls - 列出目录内容
  • ls -la - 列出所有文件(包括隐藏文件)并显示详细信息
  • cd <directory> - 切换目录
  • cd .. - 返回上一级目录
  • cd / - 返回到根目录
  • cd ~ - 返回到用户主目录(home家目录)
  • pwd - 显示当前工作目录
  • mkdir <directory> - 创建新目录
  • mkdir -p <directory> - 创建多级目录
  • rmdir <directory> - 删除空目录
  • touch <file> - 创建空文件
  • cp <source> <destination> - 复制文件/目录
  • mv <source> <destination> - 移动或重命名文件/目录
  • rm <file> - 删除文件
  • rm -rf <directory> - 强制删除非空目录
  • cat <file> - 显示文件内容
  • more <file> - 分页显示文件内容
  • less <file> - 交互式查看文件内容
  • head <file> - 显示文件开头几行
  • tail <file> - 显示文件结尾几行
  • tail -f <file> - 实时监控文件更新
  • history - 显示命令历史记录
  • !n - 执行历史记录中第n条命令

权限管理

  • chmod <permissions> <file> - 修改文件权限

权限规则不在这里展示,请移步

  • chmod +x <file> - 给文件添加执行权限
  • chown <user>:<group> <file> - 更改文件所有者和组
  • chgrp <group> <file> - 更改文件所属组
  • sudo <command> - 以管理员权限执行命令
  • su - <user> - 切换用户

系统管理

  • top - 显示系统进程信息
  • htop - 交互式进程查看器(需要安装)
  • ps - 显示当前进程
  • ps aux - 显示所有进程详细信息
  • kill <pid> - 终止进程
  • kill -9 <pid> - 强制终止进程
  • df -h - 显示磁盘空间使用情况
  • du -sh <directory> - 显示目录大小
  • free -h - 显示内存使用情况
  • uname -a - 显示系统信息
  • hostname - 显示主机名
  • date - 显示或设置系统日期和时间
  • cal - 显示日历
  • whoami - 显示当前用户名
  • users - 显示当前登录的用户

系统进程管理

  • ps -ef查看系统中正在运行的进程
    也可以写作
  • ps -aux查看系统中正在运行的进程详细信息
  • 搜索指定进程
    • ps -ef | grep <keyword> - 搜索包含指定关键词的进程
    • ps -aux | grep <keyword> - 搜索包含指定关键词的进程详细信息

      你可以看见master和worker进程,他们的职责区别如下:

      • master进程负责接收请求并将其分配给worker进程处理
      • worker进程负责实际处理请求
  • nginx -s quit - 平滑关闭Nginx服务
  • netstat -tuln - 显示监听的端口
  • netstat -tuln | grep <port> - 查看指定端口是否被监听

    例如查看80端口是否被监听

  • netstat -tuln | grep 80
  • 查询某进程占用的端口
    • netstat -tuln | grep <pid> - 查看指定进程占用的端口
  • systemctl相关指令
  • systemctl status <service> - 查看服务状态
  • systemctl start <service> - 启动服务
  • systemctl stop <service> - 停止服务
  • systemctl restart <service> - 重启服务
  • systemctl enable <service> - 设置服务开机自启
  • systemctl disable <service> - 取消服务开机自启

网络操作

  • ping <host> - 测试网络连接
  • ping -c 4 <host> - 发送4个ping包后停止
  • ifconfig - 显示网络接口信息
  • ip addr - 显示网络接口信息(新版)
  • netstat - 显示网络连接状态
  • netstat -tuln - 显示监听的端口
  • ss - 显示网络连接状态(替代netstat)
  • curl <url> - 发送HTTP请求
  • wget <url> - 下载文件
  • scp <source> <destination> - 安全复制文件
  • ssh <user>@<host> - 远程登录
  • systemctl restart network - 重启网络服务

机器的网卡配置文件地址(vim编辑器打开)

1
vi /etc/sysconfig/network-scripts/ifcfg-ens33

  • 防火墙操作
    • systemctl status firewalld - 检查防火墙状态
    • systemctl start firewalld - 启动防火墙
    • systemctl stop firewalld - 停止防火墙
    • systemctl enable firewalld - 设置防火墙开机自启
    • systemctl disable firewalld - 取消防火墙开机自启
    • firewall-cmd --list-ports - 显示当前开放的端口
    • firewall-cmd --add-port=80/tcp --permanent - 永久开放80端口(80端口可替换)[如果要临时开放,将--permanent去掉]
    • firewall-cmd --remove-port=80/tcp --permanent - 永久关闭80端口(80端口可替换)[如果要临时关闭,将--permanent去掉]
    • firewall-cmd --reload - 重新加载防火墙配置(防火墙规则更改后必须重新加载)

包管理

  • Debian/Ubuntu

    • sudo apt update - 更新软件包列表
    • sudo apt upgrade - 升级所有软件包
    • sudo apt install <package> - 安装软件包
    • sudo apt remove <package> - 卸载软件包
    • sudo apt autoremove - 自动移除不再需要的依赖
    • sudo apt search <keyword> - 搜索软件包
  • CentOS/RHEL

    • sudo yum update - 更新软件包
    • sudo yum install <package> - 安装软件包
    • sudo yum remove <package> - 卸载软件包
    • sudo yum search <keyword> - 搜索软件包]
      添加-y可以自动回答yes,无需手动确认
    • sudo yum install -y <package> - 安装软件包并自动解决依赖
  • Fedora

    • sudo dnf update - 更新软件包
    • sudo dnf install <package> - 安装软件包
    • sudo dnf remove <package> - 卸载软件包

文件搜索与处理

  • find <directory> -name <pattern> - 按名称搜索文件
    文件名检索可以使用*,进行模糊匹配
  • grep <pattern> <file> - 在文件中搜索字符串
  • grep -r <pattern> <directory> - 递归搜索目录中的字符串
  • sed 's/<old>/<new>/g' <file> - 替换文件中的字符串
  • awk '{print $1}' <file> - 处理文本文件中的列
  • sort <file> - 排序文件内容
  • uniq - 去除重复行
  • diff <file1> <file2> - 比较两个文件的差异

压缩与解压

其中c代指压缩文件,x代指解压文件,v代指查看压缩文件内容,f代指压缩文件中的文件列表,j代指压缩文件中的文件内容

  • tar -cvf <archive>.tar <files> - 创建tar归档
  • tar -xvf <archive>.tar - 解压tar归档
  • tar -czvf <archive>.tar.gz <files> - 创建gzip压缩的tar归档
  • tar -xzvf <archive>.tar.gz - 解压gzip压缩的tar归档
  • tar -cjvf <archive>.tar.bz2 <files> - 创建bzip2压缩的tar归档
  • tar -xjvf <archive>.tar.bz2 - 解压bzip2压缩的tar归档
  • zip <archive>.zip <files> - 创建zip压缩文件
  • unzip <archive>.zip - 解压zip压缩文件

编译和安装

  • ./configure - 配置编译环境
  • make - 编译源代码
  • make install - 安装编译后的程序
  • ./configure --prefix=/usr/local/<program> - 配置安装路径
  • make install - 安装编译后的程序
    make && make install 是编译并安装
    ./也是执行可编译文件的前缀

开发环境配置

  • 查找可执行文件的路径

    • which <command> - 显示命令的路径
    • whereis <command> - 显示命令及其相关文件的路径
  • 软链接

    • ln -s <target> <link> - 创建符号链接
    • ln -s /usr/local/<program>/bin/<command> /usr/local/bin/ - 将程序的可执行文件添加到系统路径
      例如将nginx的可执行文件添加到系统路径
    • ln -s /usr/local/nginx/sbin/nginx /usr/local/bin/
      查看上述软链接是否成功
    • ls -l /usr/local/bin/nginx
  • yum环境

    • yum repolist - 显示已启用的仓库列表
    • yum search <package> - 搜索软件包
    • yum info <package> - 显示软件包信息
    • yum clean all - 清理yum缓存
    • yum makecache - 重新构建yum缓存
  • 镜像仓库配置文件

    • cd /etc/yum.repos.d - 进入yum仓库配置目录
    • vi /etc/yum.repos.d/CentOS-Base.repo - 编辑yum仓库配置文件
  • maven环境确认

    • mvn -version - 显示Maven版本
    • mvn help:system - 显示系统属性和环境变量
  • java环境查询

    • java -version - 显示Java版本
    • javac -version - 显示Java编译器版本
  • c语言环境确认

    • gcc -v - 显示GCC版本
    • g++ -v - 显示G++版本
  • Nginx

    • 配置文件位置
      • /etc/nginx/nginx.conf - Nginx主配置文件
      • /etc/nginx/conf.d/ - 包含额外配置文件的目录
    • nginx -v - 显示Nginx版本
    • nginx -t - 测试Nginx配置文件
    • systemctl start nginx - 启动Nginx服务
    • systemctl stop nginx - 停止Nginx服务
    • systemctl restart nginx - 重启Nginx服务
    • systemctl enable nginx - 设置Nginx开机自启
    • systemctl disable nginx - 取消Nginx开机自启
    • systemctl stop nginx - 停止Nginx服务
    • systemctl status nginx - 查看Nginx服务状态
    • systemctl reload nginx - 重新加载Nginx配置

    上述事实使用Systemd管理Nginx服务,但是要是我们是手动编译操作的nginx,则需要使用/usr/local/nginx/sbin/nginx来启动、停止、重启Nginx服务
    在此状态下的启动,停止,重启操作分别为

    • /usr/local/nginx/sbin/nginx - 启动Nginx服务
    • /usr/local/nginx/sbin/nginx -s stop - 停止Nginx服务
    • /usr/local/nginx/sbin/nginx -s reload - 重新加载Nginx配置

    配置环境变量后可以直接使用nginx命令来启动、停止、重启Nginx服务

    • 日志文件位置:/var/log/nginx/
      • 错误日志:error.log
      • 访问日志:access.log
        读取日志内容
      • cat /var/log/nginx/error.log - 查看错误日志
      • cat /var/log/nginx/access.log - 查看访问日志
      • more /var/log/nginx/error.log - 分页查看错误日志
      • more /var/log/nginx/access.log - 分页查看访问日志

vi 编辑器常用命令

  • vim安装情况
    • vim --version - 显示vim版本信息
  • i - 进入插入模式
  • esc - 退出插入模式
  • :w - 保存文件
  • :q - 退出vi
  • :wq - 保存并退出vi
  • :q! - 强制退出vi,不保存
  • u - 撤销操作
  • ctrl + r - 重做操作
  • set number - 显示行号

其他常用命令

  • echo <text> - 显示文本
  • vi <file> - 编辑文件
  • vi +<line> <file> - 打开文件并跳转到指定行
  • set number - 显示行号
  • alias <name>=<command> - 创建命令别名
  • history - 显示命令历史
  • clear - 清屏
  • man <command> - 查看命令手册
  • which <command> - 显示命令的路径
  • whereis <command> - 显示命令及其相关文件的路径
  • whatis <command> - 显示命令的简要描述
  • exit - 退出终端
  • poweroff - 关闭系统
  • reboot - 重启系统

框架特定命令

以下是常用开发框架的完整执行语句,涵盖从项目创建到部署的全流程。

Vue.js

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 安装Vue CLI
npm install -g @vue/cli

# 创建新项目
vue create project-name

# 使用Vue 3 Vite创建项目
npm create vite@latest project-name -- --template vue
cd project-name
npm install
npm run dev

# 构建生产版本
npm run build

# 安装路由
npm install vue-router@4

# 安装状态管理
npm install pinia

# 安装Axios
npm install axios

Spring Boot

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# 使用Spring Initializr创建项目
curl https://start.spring.io/starter.zip -d dependencies=web,data-jpa -d language=java -d type=maven-project -o demo.zip
unzip demo.zip
cd demo

# 使用Maven构建
./mvnw clean package

# 运行应用
./mvnw spring-boot:run

# 添加依赖
# 在pom.xml中添加依赖后执行
./mvnw dependency:resolve

Vite

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 安装Vite (通常无需全局安装)
npm create vite@latest

# 创建特定框架的项目
npm create vite@latest my-vue-app -- --template vue
npm create vite@latest my-react-app -- --template react
npm create vite@latest my-vanilla-app -- --template vanilla
npm create vite@latest my-svelte-app -- --template svelte

# 进入项目目录
cd my-vue-app

# 安装依赖
npm install

# 启动开发服务器
npm run dev

# 构建生产版本
npm run build

# 预览构建结果
npm run preview

# 配置Vite
# 编辑vite.config.js文件自定义构建配置

Docker常用命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# 构建镜像
docker build -t my-image .

# 运行容器
docker run -p 8080:80 my-image

# 运行容器(后台模式)
docker run -d -p 8080:80 my-image

# 查看运行中的容器
docker ps

# 停止容器
docker stop <container_id>

# 删除容器
docker rm <container_id>

# 查看本地镜像
docker images

# 删除镜像
docker rmi <image_id>

# 拉取镜像
docker pull <image_name>

# 使用Docker Compose
docker-compose up -d

数据库常用命令

MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# 安装MySQL (Windows使用安装程序,Linux使用包管理器)
# Ubuntu/Debian
sudo apt update
sudo apt install mysql-server

# CentOS/RHEL
sudo yum install mysql-server

sudo systemctl start mysqld
sudo systemctl enable mysqld

# 初始化安全设置 (首次安装后)
sudo mysql_secure_installation

# 登录MySQL
mysql -u root -p

# 创建数据库
CREATE DATABASE mydb;

# 创建用户并授权
CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypassword';
GRANT ALL PRIVILEGES ON mydb.* TO 'myuser'@'localhost';
FLUSH PRIVILEGES;

# 备份数据库
mysqldump -u root -p mydb > mydb_backup.sql

# 恢复数据库
mysql -u root -p mydb < mydb_backup.sql

# 查看所有数据库
SHOW DATABASES;

# 使用数据库
USE mydb;

# 查看所有表
SHOW TABLES;

PostgreSQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# 安装PostgreSQL
# Ubuntu/Debian
sudo apt update
sudo apt install postgresql postgresql-contrib

# CentOS/RHEL
sudo yum install postgresql-server
sudo postgresql-setup initdb
sudo systemctl start postgresql
sudo systemctl enable postgresql

# 登录PostgreSQL
# 切换到postgres用户
sudo -i -u postgres
# 登录数据库
psql

# 创建数据库
CREATE DATABASE mydb;

# 创建用户并授权
CREATE USER myuser WITH PASSWORD 'mypassword';
GRANT ALL PRIVILEGES ON DATABASE mydb TO myuser;

# 备份数据库
pg_dump -U myuser mydb > mydb_backup.sql

# 恢复数据库
psql -U myuser mydb < mydb_backup.sql

# 查看所有数据库
\l

# 使用数据库
\c mydb

# 查看所有表
\dt

MongoDB

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# 安装MongoDB (需要添加MongoDB仓库)
# Ubuntu/Debian
sudo apt update
sudo apt install -y mongodb-org

# CentOS/RHEL
sudo yum install -y mongodb-org
sudo systemctl start mongod
sudo systemctl enable mongod

# 登录MongoDB
mongo

# 显示所有数据库
show dbs

# 创建/使用数据库
use mydb

# 插入数据
db.mycollection.insertOne({name: "test", value: 1})

# 查询数据
db.mycollection.find()

# 备份数据库
mongodump --db mydb --out /path/to/backup

# 恢复数据库
mongorestore --db mydb /path/to/backup/mydb

数据库操作自动化脚本

MySQL备份脚本 (mysql-backup.bat) - Windows

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
@echo off
REM MySQL数据库备份脚本
REM 需要预先安装MySQL并配置环境变量

set DATE=%date:~0,4%%date:~5,2%%date:~8,2%
set TIME=%time:~0,2%%time:~3,2%%time:~6,2%
set BACKUP_DIR=D:\db_backup
set DB_NAME=mydb
set DB_USER=root
set DB_PASS=mypassword

REM 创建备份目录
if not exist %BACKUP_DIR% mkdir %BACKUP_DIR%

REM 执行备份
mysqldump -u %DB_USER% -p%DB_PASS% %DB_NAME% > %BACKUP_DIR%\%DB_NAME%_%DATE%_%TIME%.sql

if %ERRORLEVEL% EQU 0 (
echo 备份成功: %BACKUP_DIR%\%DB_NAME%_%DATE%_%TIME%.sql
) else (
echo 备份失败
)

pause

使用说明:

  1. 将上述代码保存为mysql-backup.bat
  2. 修改脚本中的数据库名称、用户名、密码和备份目录
  3. 双击运行脚本或在命令行中执行
  4. 备份文件将保存在指定目录,文件名包含时间戳

PostgreSQL自动备份脚本 (pg-backup.sh) - Linux/Mac

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#!/bin/bash
# PostgreSQL数据库备份脚本
# 需要预先安装PostgreSQL

DATE=$(date +%Y%m%d_%H%M%S)
BACKUP_DIR=/path/to/backup
DB_NAME=mydb
DB_USER=myuser

# 创建备份目录
mkdir -p $BACKUP_DIR

# 执行备份
pg_dump -U $DB_USER $DB_NAME > $BACKUP_DIR/$DB_NAME_$DATE.sql

if [ $? -eq 0 ]; then
echo "备份成功: $BACKUP_DIR/$DB_NAME_$DATE.sql"
else
echo "备份失败"
fi

使用说明:

  1. 将上述代码保存为pg-backup.sh
  2. 赋予执行权限: chmod +x pg-backup.sh
  3. 修改脚本中的数据库名称、用户名和备份目录
  4. 执行脚本: ./pg-backup.sh
  5. 可添加到crontab实现定时备份: crontab -e 然后添加 0 2 * * * /path/to/pg-backup.sh (每天凌晨2点执行)

自动化开发流脚本

Windows开发环境自动化脚本 (dev-setup.bat)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
@echo off
REM 开发环境自动化设置脚本

REM 创建项目目录
mkdir my-dev-project
cd my-dev-project

REM 初始化Git仓库
git init

echo # 项目说明 > README.md
git add README.md
git commit -m "初始化项目"

REM 初始化前端项目 (Vue + Vite)
npm create vite@latest frontend -- --template vue
cd frontend
npm install
npm install vue-router@4 pinia axios

REM 创建后端项目目录
cd ..
mkdir backend
cd backend

REM 初始化Node.js后端项目
npm init -y
npm install express cors dotenv

REM 创建基础文件
echo const express = require('express'); > app.js
echo const app = express(); >> app.js
echo const port = process.env.PORT || 3000; >> app.js
echo >> app.js
echo app.get('/', (req, res) => { >> app.js
echo res.send('Hello World!'); >> app.js
echo }); >> app.js
echo >> app.js
echo app.listen(port, () => { >> app.js
echo console.log(`Server running on port ${port}`); >> app.js
echo }); >> app.js
echo >> app.js

echo PORT=3000 > .env

REM 返回项目根目录
cd ..

REM 创建Docker Compose配置
echo version: '3' > docker-compose.yml
echo services: >> docker-compose.yml
echo frontend: >> docker-compose.yml
echo build: ./frontend >> docker-compose.yml
echo ports: >> docker-compose.yml
echo - "8080:80" >> docker-compose.yml
echo backend: >> docker-compose.yml
echo build: ./backend >> docker-compose.yml
echo ports: >> docker-compose.yml
echo - "3000:3000" >> docker-compose.yml

REM 完成设置
echo 开发环境设置完成!
echo 项目结构已创建,包含前端(Vue+Vite)和后端(Node.js+Express)
echo 可使用 'docker-compose up -d' 启动服务

pause

开发工作流自动化脚本 (dev-flow.bat)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
@echo off
REM 开发工作流自动化脚本

:menu
cls
echo 开发工作流自动化工具
echo ------------------------
echo 1. 启动开发服务器
echo 2. 构建项目
echo 3. 运行测试
echo 4. 提交代码
echo 5. 部署到测试环境
echo 6. 退出
echo ------------------------
set /p choice=请选择操作:

if %choice%==1 goto start-dev
if %choice%==2 goto build
if %choice%==3 goto test
if %choice%==4 goto commit
if %choice%==5 goto deploy-test
if %choice%==6 goto exit

echo 无效的选择,请重试。
pause
goto menu

:start-dev
echo 启动前端开发服务器...
start cmd /k "cd frontend && npm run dev"
echo 启动后端开发服务器...
start cmd /k "cd backend && node app.js"
echo 开发服务器已启动。
pause
goto menu

:build
echo 构建前端项目...
cd frontend
npm run build
if %ERRORLEVEL% EQU 0 (
echo 前端构建成功!
) else (
echo 前端构建失败!
pause
goto menu
)
cd ..
echo 构建完成。
pause
goto menu

:test
echo 运行前端测试...
cd frontend
npm test
cd ..
echo 运行后端测试...
cd backend
npm test
cd ..
pause
goto menu

:commit
set /p message=请输入提交信息:
git add .
git commit -m "%message%"
echo 代码已提交。
pause
goto menu

:deploy-test
echo 部署到测试环境...
REM 这里添加测试环境部署命令
echo 部署完成。
pause
goto menu

:exit
echo 退出程序。
exit /b 0

React

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# 创建React应用
npx create-react-app my-app
cd my-app
npm start

# 使用Vite创建React应用
npm create vite@latest my-react-app -- --template react
cd my-react-app
npm install
npm run dev

# 安装路由
npm install react-router-dom

# 安装状态管理
npm install redux react-redux
npm install @reduxjs/toolkit

# 构建生产版本
npm run build

Django

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 安装Django
pip install django

# 创建项目
django-admin startproject mysite
cd mysite

# 创建应用
python manage.py startapp myapp

# 数据库迁移
python manage.py makemigrations
python manage.py migrate

# 创建超级用户
python manage.py createsuperuser

# 运行开发服务器
python manage.py runserver

# 安装REST框架
pip install djangorestframework