博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
shell替换程序里的代码
阅读量:6306 次
发布时间:2019-06-22

本文共 2026 字,大约阅读时间需要 6 分钟。

需求:

扩展名类型: .php .html .shtml .inc
将替换为
替换

替换为:_(*).js
替换为:(*)/(*).js

脚本1:
#!/bin/bash

ROOT_DIR='/root/temp/wow'

KEYWORD='ad_union'
KEYWORD2='advertisement'

#for i in $(find $ROOT_DIR -name "*.*" -exec grep "$KEYWORD" {} \;)

for i in $(find $ROOT_DIR -name "*.*")
do
ifile=$(grep "$KEYWORD" $i)
if [ "$?" -eq "0" ]
then
FILE_NUMBER=$(echo $ifile | awk -F"\"" '{print $2}' | awk -F"/" '{print $NF}' | awk -F"." '{print $1}' | awk -F"_" '{print $NF}')
#sed -i "s#ad\_union\_[0-9][0-9]#union\_$FILE_NUMBER#g" $i
sed -i "s#ad\_union\_$FILE_NUMBER#union\_$FILE_NUMBER#g" $i
fi

ifile=$(grep "$KEYWORD2" $i)

if [ "$?" -eq "0" ]
then
FILE_NUMBER2=$(echo $ifile | awk -F"\"" '{print $2}' | awk -F"/" '{print $NF}' | awk -F"." '{print $1}' | awk -F"_" '{print $NF}')
sed -i "s#advertisement\/$FILE_NUMBER2\/ad\_$FILE_NUMBER2#upload\/$FILE_NUMBER2\/$FILE_NUMBER2#g" $i
fi
done

 

 

脚本2:
#!/bin/bash

EXT_ARRAY=("*.php" "*.inc" "*.html" "*.shtml")

EXT_ARRAY_LEN=${#EXT_ARRAY[@]}
ROOT_DIR='/root/temp/wow'
KEYWORD='ad_union'
KEYWORD2='advertisement'

#i=0

#while [ $i -lt $EXT_ARRAY_LEN ]
#do
# find $ROOT_DIR -name "${EXT_ARRAY[$i]}" | while read f
# do
# sed -i 's#union\/ad_union_5\.js#union\/union_5\.js#g' $f
# sed -i 's#advertisement\/27\/ad_27\.js#upload\/27\/27\.js#g' $f
# done
# let i++
#done

#for i in $(find $ROOT_DIR -name "*.*" -exec grep "$KEYWORD" {} \;)

for i in $(find $ROOT_DIR -name "*.*")
do
ifile=$(grep "$KEYWORD" $i)
if [ "$?" -eq "0" ]
then
FILE_NUMBER=$(echo $ifile | awk -F"/" '{print $NF}' | awk -F"." '{print $1}' | awk -F"_" '{print $NF}')
#sed -i "s#ad\_union\_[0-9][0-9]#union\_$FILE_NUMBER#g" $i
sed -i "s#ad\_union\_$FILE_NUMBER#union\_$FILE_NUMBER#g" $i
fi

ifile=$(grep "$KEYWORD2" $i)

if [ "$?" -eq "0" ]
then
FILE_NUMBER2=$(echo $ifile | awk -F"/" '{print $NF}' | awk -F"." '{print $1}' | awk -F"_" '{print $NF}')
sed -i "s#advertisement\/$FILE_NUMBER2\/ad\_$FILE_NUMBER2#upload\/$FILE_NUMBER2\/$FILE_NUMBER2#g" $i
fi
done

这两个脚本分别执行替换程序里的代码内容。

本文转自 liang3391 51CTO博客,原文链接:http://blog.51cto.com/liang3391/456622

转载地址:http://gzsxa.baihongyu.com/

你可能感兴趣的文章
自动生成四则运算题目
查看>>
【翻译】使用新的Sencha Cmd 4命令app watch
查看>>
【前台】【单页跳转】整个项目实现单页面跳转,抛弃iframe
查看>>
因为你是前端程序员!
查看>>
数据库设计中的14个技巧
查看>>
Android学习系列(5)--App布局初探之简单模型
查看>>
git回退到某个历史版本
查看>>
ecshop
查看>>
HTML5基础(二)
查看>>
在GCE上安装Apache、tomcat等
查看>>
在Mac 系统下进行文件的显示和隐藏
查看>>
ue4(c++) 按钮中的文字居中的问题
查看>>
技能点
查看>>
读书笔记《乌合之众》
查看>>
Hadoop日记Day1---Hadoop介绍
查看>>
iOS 学习资料汇总
查看>>
centos7 yum安装jdk
查看>>
Bluedroid与BluZ,蓝牙测试方法的变动(基于bludroid和BlueZ的对比)
查看>>
接口和抽象类有什么区别
查看>>
Linux 下添加用户,修改权限
查看>>