修复创建jsite后site_port.json文件格式错误问题及执行删除jiste后需要脚本里面命令需要交互的问题
This commit is contained in:
parent
18fba94d4b
commit
0772e05e5e
27
jsite.sh
27
jsite.sh
@ -546,13 +546,20 @@ save_port_assignment() {
|
|||||||
echo "{\"$site_name\": $port}" > "$port_file"
|
echo "{\"$site_name\": $port}" > "$port_file"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
# 如果没有jq,使用简单的文本处理
|
# 如果没有jq,使用更安全的文本处理方式
|
||||||
if [ -f "$port_file" ]; then
|
if [ -f "$port_file" ]; then
|
||||||
# 移除已存在的条目(如果存在)
|
# 提取现有条目并重新构建
|
||||||
grep -v "\"$site_name\"" "$port_file" > "${port_file}.tmp" 2>/dev/null || true
|
local existing_entries=$(grep -o '"[^"]*"[[:space:]]*:[[:space:]]*[0-9]*' "$port_file" 2>/dev/null | grep -v "\"$site_name\"" || echo "")
|
||||||
mv "${port_file}.tmp" "$port_file"
|
|
||||||
# 在最后一个大括号前添加新条目
|
# 重新构建JSON文件
|
||||||
sed -i "s/}$/ \"$site_name\": $port\n}/" "$port_file" 2>/dev/null || echo "{\"$site_name\": $port}" > "$port_file"
|
echo "{" > "$port_file"
|
||||||
|
if [ -n "$existing_entries" ]; then
|
||||||
|
echo "$existing_entries" | sed 's/$/,/' | head -n -1 >> "$port_file"
|
||||||
|
echo "$existing_entries" | tail -n 1 >> "$port_file"
|
||||||
|
echo "," >> "$port_file"
|
||||||
|
fi
|
||||||
|
echo " \"$site_name\": $port" >> "$port_file"
|
||||||
|
echo "}" >> "$port_file"
|
||||||
else
|
else
|
||||||
# 创建新文件
|
# 创建新文件
|
||||||
echo "{\"$site_name\": $port}" > "$port_file"
|
echo "{\"$site_name\": $port}" > "$port_file"
|
||||||
@ -1430,13 +1437,7 @@ create_site() {
|
|||||||
|
|
||||||
# 删除网站
|
# 删除网站
|
||||||
delete_site() {
|
delete_site() {
|
||||||
log_info "即将删除网站: $SITE_NAME"
|
log_info "开始删除网站: $SITE_NAME"
|
||||||
read -p "确认删除?(y/N): " confirm
|
|
||||||
|
|
||||||
if [ "$confirm" != "y" ] && [ "$confirm" != "Y" ]; then
|
|
||||||
log_info "取消删除操作"
|
|
||||||
return 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
# 停止PM2进程
|
# 停止PM2进程
|
||||||
local status=$(get_site_status "$SITE_NAME")
|
local status=$(get_site_status "$SITE_NAME")
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user