最近我维护的一个网站(某净化工程网站)要修改几个词,但是这个词在网站上很多,而且整个网站的页面有数百个,如果一个一个修改或者本地修改后ftp上传的话,相当耗时间。我记的个webshell有个批量替换的功能,不过当我ftp上传这个文件的时候,却发现找不到这个文件,估计是被杀毒给灭了。
索性自己写一个ASP版的字符替换工具(下载地址 http://www.sdclear.cn/OtherFile/tihuan.rar)。其实实现这个功能很简单。用FSO(Scripting.FileSystemObject)对象的 OpenTextFile 方法打开一个文件,把文件内容读取到一个变量,利用Replace方法替换掉需要替换的字符,然后把替换后的变量的内容写回到文件。
代码如下:

<%
'*******************
'asp版字符替换器
'By Air
'QQ:153580616
'*******************
%>
<form id="form1" name="form1" method="post" action="">
  <label></label>
  <p>
    <label></label>
  </p>
  <br/>
  <table width="520" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#66CC99">
    <tr bgcolor="#FFFFFF">
      <td height="40" colspan="2" align="center" bgcolor="#57DB9C"><strong>ASP版字符替换器</strong></td>
    </tr>
    <tr bgcolor="#FFFFFF">
      <td align="center">网站目录:</td>
      <td><label>
        <input name="WebMuLu" type="text" id="WebMuLu" size="40" value="<% if Request("WebMuLu")<>"" Then Response.Write(Request("WebMuLu")) else Response.Write(Server.MapPath("./")) End If%>" />
      </label></td>
    </tr>
    <tr bgcolor="#FFFFFF">
      <td width="127" align="center">文件后缀:</td>
      <td width="373"><input name="HouZhui" type="text" id="HouZhui" value="<%If Request("HouZhui")<>"" Then Response.Write(Request("HouZhui")) Else Response.Write("asp,html,htm") End If%>" size="40"  /></td>
    </tr>
    <tr bgcolor="#FFFFFF">
      <td align="center">替换模式:</td>
      <td><label>
        <input name="isReplace" type="checkbox" id="isReplace" <%If Request("isReplace") <>"" Then Response.Write("Checked")%> value="yes" />
      </label></td>
    </tr>
    <tr bgcolor="#FFFFFF">
      <td align="center">查找内容:</td>
      <td><textarea name="MuMaContent" cols="38" rows="4" id="MuMaContent"><%if Request("MuMaContent")<>"" Then Response.Write(Request("MuMaContent"))%></textarea></td>
    </tr>
    <tr bgcolor="#FFFFFF">
      <td align="center">替换内容:</td>
      <td><textarea name="ReplaceStr" cols="38" rows="4" id="ReplaceStr"><%if Request("ReplaceStr")<>"" Then Response.Write(Request("ReplaceStr"))%></textarea></td>
    </tr>
    <tr bgcolor="#FFFFFF">
      <td height="40" colspan="2" align="center"><input type="submit" name="Submit" value="搜索" />
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 
        <label>
        <input type="reset" name="Submit2" value="重置" />
        </label></td>
    </tr>
  </table>
  <br />
</form>
<%
Function BianLi(path)
Set fso=Server.CreateObject("Scripting.FileSystemObject")
on error resume next 
set objFolder=fso.GetFolder(path)
set objFiles=objFolder.Files

for each objFile in objFiles 
for i = LBound(arr) to UBound(arr)
if fso.GetExtensionName(objFile.Name) = arr(i) or arr(i) = "*.*" Then
set f = fso.OpenTextFile(path + "" + objFile.Name,1)
tmpstring = f.ReadAll
if instr(tmpstring,Request("MuMaContent")) <> 0 Then
response.Write(path + "" + objFile.Name +"<br>")
j=j+1
if request("isReplace")="yes" and objFile.Name <> self  then
tmpstring = Replace(tmpstring,Request("MuMaContent"),Request("ReplaceStr"))
set f = fso.OpenTextFile(path + ""+objFile.Name,2)
f.write(tmpstring)
f.close
end if

end if
end if
next
next
 
set objSubFolders=objFolder.Subfolders 
for each objSubFolder in objSubFolders 
nowpath=path + "" + objSubFolder.name 
bianli(nowpath)
next 

set objFolder=nothing 
set objSubFolders=nothing 
set fso=nothing 
end function 


    
if request("Submit")<>"" Then
    dim arr,j,selfarr
    j=0
    Server.ScriptTimeout=999999999
    self = Request.ServerVariables("SCRIPT_NAME")
    selfarr = split(self,"/")
    self = selfarr(UBound(selfarr))
    arr = split(request("HouZhui"),",")
    
%>
  <table width="520" border="0" align="center" cellpadding="5" cellspacing="1" bgcolor="#66CC99">
    <tr bgcolor="#FFFFFF">
      <td width="500" height="40" align="center" bgcolor="#57DB9C"><strong>查找结果</strong></td>
    </tr>
    <tr bgcolor="#FFFFFF">
    <td height="40" align="left">
    <%    
    if Right(Request("WebMuLu"),1)="" Then
        WebMuLu = Left(Request("WebMuLu"),len(Request("WebMuLu"))-1)
    End If
    bianli(Request("WebMuLu"))
    Response.Write("<br/>")
    Response.Write("==================查找结果为 <font color=red>" &Cstr(j)&"</font> 个文件=================")
    %>
    </td>
    </tr>
</table>
    <%
End If



%> 

把这个文件上传到网站空间,可以在线查找替换字符。

ASP字符查找替换器相关推荐

  1. .net trim 替换指定字符_CAD二次开发实例:批量文本查找替换

    # 0. 引言 在CAD中进行文本替换已经存在一个find命令了,但是只能进行一对一的文本替换,如果遇到一个图形文件中有很多个文本需要替换时,你不可能一个一个的去find替换吧,当然你也可以尝试一个一 ...

  2. indesign中调出字符样式快捷键_InDesign的文字快速查找替换编辑技巧介绍(图文)...

    InDesign中经常会遇到很多需要查找与替换的文字编辑工作,在编排文字时设定好段落样式和字符样式,查找和替换的文字编辑工作将会变得更加简单和便捷.今天就向大家介绍InDesign的文字快速查找替换编 ...

  3. linux 文件转换ascii,linux 小技巧(查找替换文件中的ascii编码字符)

    这里纪录一些linux下用到的小技巧,以免遗忘 在linux中经常碰见各种文件处理.最常用的就是替换文件中的某些字符.常见字符替换还是很容易完成.但是有些不可见字符以及ascii编码字符等等都无法直接 ...

  4. [手搓人]大战[高亮编辑器/查找替换/函数跳跳蛙]--巅峰对决(1)

    战前准备 github以及它的访问权限 强大的心理支撑 一点点英文水平(至少会念ABC ) 会写测试样例 面向对象要学好(没学真的会感到是在地狱) 使用环境 python 3.8.0 pyqt 5.1 ...

  5. 利用查找替换批处理(附完整源码),进行高效重构

    如果你需要在大量的代码文件中修改某个地方,那么最高效的办法就是使用正则进行批量处理. 下面介绍一个C#写的查找替换处理程序. 我本人不喜欢太多的废话,看过功能介绍,各位朋友感兴趣,直接下载小源码包或程 ...

  6. awk sed (1)====积累取ip以及sed 查找替换

    (一)awk 和 sed 的相似点 (1)它们都使用相似的语法来调用. (2)它们都是面向字符流的,都是从文本中一行一行的输入,并且将输入直接送到标准输出端 (3)它们都使用正则表达式进行模式匹配 ( ...

  7. vim查找/替换字符串

    1.:s 命令来替换字符串. :s/vivian/sky/ 替换当前行第一个 vivian 为 sky :s/vivian/sky/g 替换当前行所有 vivian 为 sky :n,$s/vivia ...

  8. Vi/Vim查找替换使用方法

    vi/vim 中可以使用 :s 命令来替换字符串.该命令有很多种不同细节使用方法,可以实现复杂的功能,记录几种在此,方便以后查询.    :s/vivian/sky/ 替换当前行第一个 vivian ...

  9. vi查找替换命令详解

    一.查找 查找命令  /pattern<Enter> :向下查找pattern匹配字符串  ?pattern<Enter>:向上查找pattern匹配字符串  使用了查找命令之 ...

  10. Editplus查找替换的正则表达式应用说明

    表达式 说明 \t        制表符. \n        换行. .         匹配任意字符. |         匹配表达式左边和右边的字符. 例如, "ab|bc" ...

最新文章

  1. AndroidManifest.xml
  2. 为什么将 0.1f 改为 0 会使性能降低 10 倍?
  3. 使用vmware 报错 解决方法
  4. 转观念 变架构 补短板——析科华恒盛向数据中心方案商转型
  5. 五大原则之----里氏替换原则(LSP)
  6. U8v10.1销售发货单打印模板取客户名称不正确的问题
  7. svn服务器设置忽略文件夹,如何使用SVN忽略目录?
  8. Linux输入密码后一直在登陆界面循环
  9. 人生励志语录 排比句
  10. h61 nvme硬盘_切割SN520amp;amp;对比主流NVME2242amp;amp;无硬盘盒迁移系统
  11. actuator--基础--6.1--端点解析--health端点
  12. C++用字符串组成心形图案的尝试
  13. 《图说VR入门》——googleVR 他山之玉
  14. 使用mysql_upgrade升级mysql5.1至5.6的数据库升级实施方案
  15. Office2007 Professional简体中文版 附注册码
  16. Python将图片转换为字符画
  17. 资源分享:oracle 数据库软件下载(持续更新,有需要请留言!)
  18. 25岁员工突然离世:熬得起下半夜的人,却熬不起下半生!
  19. word如何只设置一张为横向_设置Word的某页为横向、单独设置某页的方法
  20. 跨考南京理工计算机需要学什么,南京理工大学计算机考研经验分享

热门文章

  1. GIS数据恢复(ArcMap)地理数据库误删
  2. 大学追忆录(天空晴朗的梦)
  3. 《指数型组织》学习总结
  4. 为啥程序员下班后只关显示器从不关电脑?
  5. Python编写三级目录(升级版)
  6. word域转换html,word域代码转换html丢失解决办法.docx
  7. 汇编语言程序设计思维导图
  8. 史上最严重数据泄露:5亿雅虎账户于2014年被盗
  9. 美萍足浴远程共享狗使用方法
  10. arcgis字段求和_arcgis计算命令