You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
#!/bin/bash
Linux_Version="7.9.7"Windows_Version="7.8.0"
FILES=(public/install/src/panel6.zippublic/install/update/LinuxPanel-${Linux_Version}.zippublic/install/install_6.0.shpublic/install/update_panel.shpublic/install/update6.shpublic/win/install/panel_update.pypublic/win/panel/panel_${Windows_Version}.zippublic/win/panel/data/api.pypublic/win/panel/data/setup.py)
DIR=$1SITEURL=$2
if [ ! -d "$DIR" ]; then echo "网站目录不存在" exit 1fiif [ "$SITEURL" = "" ]; then echo "网站URL不正确" exit 1fi
function handleFile(){ Filename=$1 if [ "${Filename##*.}" = "zip" ]; then handleZipFile $Filename else handleTextFile $Filename fi}
function handleZipFile(){ Filename=$1 mkdir -p /tmp/package unzip -o -q $Filename -d /tmp/package grep -rl --include=\*.py --include=\*.sh --include=index.js 'http://www.example.com' /tmp/package | xargs -I @ sed -i "s|http://www.example.com|${SITEURL}|g" @ Sprit_SITEURK=${SITEURL//\//\\\\\/} grep -rl --include=\*.sh 'http:\\\/\\\/www.example.com' /tmp/package | xargs -I @ sed -i "s|http:\\\/\\\/www.example.com|${Sprit_SITEURK}|g" @ rm -f $Filename cd /tmp/package && zip -9 -q -r $Filename * && cd - rm -rf /tmp/package}
function handleTextFile(){ sed -i "s|http://www.example.com|${SITEURL}|g" $1}
echo "=========================="echo "正在处理中..."echo "=========================="
for File in ${FILES[@]}do Filename="${DIR}${File}" if [ -f "$Filename" ]; then handleFile $Filename echo -e "成功处理文件:\033[32m${Filename}\033[0m" else echo -e "文件不存在:\033[33m${Filename}\033[0m" fidone
echo "=========================="echo "处理完成"echo "=========================="
|