bash脚本
更新前端
#!/bin/bash # 定义变量 # 移动zip到相应路径
function move_zip() { if [ -f "$ZIP_FILE" ]; then mv "$ZIP_FILE" "$ZIP_DEST" if [ $? -eq 0 ]; then echo "Zip file moved to $ZIP_DEST" else echo "Failed to move zip file" exit 1 fi else echo "Zip file $ZIP_FILE not found" exit 1 fi
} # 解压zip文件
function unzip_file() { if [ -f "$ZIP_DEST" ]; then unzip -o "$ZIP_DEST" -d "$EXTRACT_DIR" if [ $? -eq 0 ]; then echo "Zip file unzipped to $EXTRACT_DIR" else echo "Failed to unzip file" exit 1 fi else echo "Zip file $ZIP_DEST not found" exit 1 fi
} # 备份kcbh文件
function backup_kcbh() {if [ -d "$RENAMED_FRONTEND_DIR" ]; then mkdir -p "$BACKUP_DIR" mv "$RENAMED_FRONTEND_DIR" "$BACKUP_DIR/$BACKUP_FILE" if [ $? -eq 0 ]; then echo "kcbh backed up to $BACKUP_DIR/$BACKUP_FILE" else echo "Failed to backup kcbh" exit 1 fi else echo "kcbh directory not found" exit 1 fi
} # 重命名前端目录
function rename_frontend() { if [ -d "$FRONTEND_DIR" ]; then mv "$FRONTEND_DIR" "$RENAMED_FRONTEND_DIR" if [ $? -eq 0 ]; then echo "Frontend directory renamed to $RENAMED_FRONTEND_DIR" else echo "Failed to rename frontend directory" exit 1 fi else echo "Frontend directory $FRONTEND_DIR not found" exit 1 fi
} # 重启nginx服务
function restart_nginx() { /usr/sbin/nginx -s reload if [ $? -eq 0 ]; then echo "Nginx restarted" else echo "Failed to restart nginx" exit 1 fi
} move_zip
unzip_file
backup_kcbh
rename_frontend
restart_nginx
Linux命令
运行bash脚本
bash front.sh
./front.sh
压缩文件夹为zip文件
zip -r dist.zip dist/
删除文件/文件夹
rm dist.zip
rm -r backup
新建文件/文件夹
touch log.log
mkdir dist
列出含有“aaa”的进程的PID
ps -ef | grep aaa | grep -v grep | awk '{print $2}'
# ps -ef 列出当前进程的详细信息
# grep aaa 列出含有aaa的进程信息
# grep -v grep 反选,作用是排除掉因前面的grep aaa语句而产生的进程信息
# awk '{print $2}' 选择详细信息的第二个字段,即PID
判断前面语句执行情况
if [ $? -eq 0 ]; then
# -eq 意为判断等于,语句执行完返回0
判断能否找到文件/文件夹/判断字符串是否为空
if [ -f "$JAR_FILE" ]; then
if [ -d "$FRONTEND_DIR" ]; then
if [ -n "$pid" ]; then
移动/重命名/替换
mv "$A" "$B"
待补充