中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 路径替换问题 上一主题 | 下一主题
knight1006
初级用户





积分 29
发帖 16
注册 2005-11-15
状态 离线
『楼 主』:  路径替换问题

Directory Image=D:\Green\Opera\images\folder.gif
Drive Image=D:\Green\Opera\images\drive.gif
Link Image=D:\Green\Opera\images\link.gif
File Image=D:\Green\Opera\images\file.gif
Cache Style File=D:\Green\Opera\Styles\cache.css
Dir Style File=D:\Green\Opera\Styles\dir.css
Drives Style File=D:\Green\Opera\Styles\drives.css
History Style File=D:\Green\Opera\Styles\history.css
Plugins Style File=D:\Green\Opera\Styles\plugins.css
WML CSS File=D:\Green\Opera\Styles\wml.css
OPF CSS File=D:\Green\Opera\Styles\opf.css
CSR CSS File=D:\Green\Opera\Styles\csr.css
About Style File=D:\Green\Opera\Styles\About.css
MIME Style File=D:\Green\Opera\Styles\mime.css
Info CSS File=D:\Green\Opera\Styles\info.css
Language Codes File=D:\Green\Opera\lngcode.txt
IM Style File=D:\Green\Opera\Styles\im.css
Certificate Info CSS File=D:\Green\Opera\styles\certinfo.css
Help Directory=http://help.opera.com/help
Plugin Path=D:\Green\Opera\Program\Plugins;


我想把上面的D:\Green\Opera替换成e:\file\opera

大家帮帮忙,怎么用批处理完成

2006-12-5 02:27
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 2 楼』:  


@echo off
setlocal enabledelayedexpansion
for /f "delims=" %%i in (test.txt) do (
    set var=%%i
    set var=!var:D:\Green\Opera=e:\file\opera!
    echo !var!
)
pause




尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-12-5 02:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
knight1006
初级用户





积分 29
发帖 16
注册 2005-11-15
状态 离线
『第 3 楼』:  

谢谢版主,如果那个d:\green\opera的长度是不固定的怎么办?
如d:\green\opera\opera或者别的什么

2006-12-5 02:54
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
tigerpower
中级用户

大师兄


积分 377
发帖 99
注册 2005-8-26
状态 离线
『第 4 楼』:  

使用

                _
               | |
   ___  ___  __| |
  / __|/ _ \/ _` |
  \__ \  __/ (_| |
  |___/\___|\__,_|


参见此帖(点击前往)




2006-12-5 07:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复
namejm
荣誉版主

batch fan


积分 5226
发帖 1737
注册 2006-3-10
来自 成都
状态 离线
『第 5 楼』:  



  Quote:
Originally posted by knight1006 at 2006-12-4 13:54:
谢谢版主,如果那个d:\green\opera的长度是不固定的怎么办?
如d:\green\opera\opera或者别的什么

  实在想象不出长度不固定指的是一种什么情况,请多举几个例子,以便于理解你的意思。



尺有所短,寸有所长,学好CMD没商量。
考虑问题复杂化,解决问题简洁化。
2006-12-5 08:05
查看资料  发短消息 网志   编辑帖子  回复  引用回复
electronixtar
铂金会员





积分 7493
发帖 2672
注册 2005-9-2
状态 离线
『第 6 楼』:  

很难得看到 tigerpower 在线啊




C:\>BLOG http://initiative.yo2.cn/
C:\>hh.exe ntcmds.chm::/ntcmds.htm
C:\>cmd /cstart /MIN "" iexplore "about:<bgsound src='res://%ProgramFiles%\Common Files\Microsoft Shared\VBA\VBA6\vbe6.dll/10/5432'>"
2006-12-5 08:30
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
knight1006
初级用户





积分 29
发帖 16
注册 2005-11-15
状态 离线
『第 7 楼』:  

谢谢大家的关心,就还用上面的例子吧,这是OPERA浏览器的一个配置文件,现要将其做成绿色版就涉及到更改路径的问题。
偶是想把上一次的路径和当前的路径都保存到文件中,然后用FOR或都用GSAR来替换路径(SED对中文支持不好,故不考虑用它)。这个原始路径和当前路径的长度都不固定(也就是上面的D:\green\opera),不知道怎么才能识别它。

2006-12-5 21:16
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
knight1006
初级用户





积分 29
发帖 16
注册 2005-11-15
状态 离线
『第 8 楼』:  

举例如下:

op.txt 存储上一次的路径 d:\green\opera

rul.txt 存储当前路径 c:\opera

请问如何传递这两个文件的内容给FOR或者GSAR来更改上面的路径,把d:\green\opera改为c:\opera

这其中这两个路径的长度可能会变,关键是如何从这两个文件中读取内容并传递给程序

[ Last edited by knight1006 on 2006-12-5 at 09:28 PM ]

2006-12-5 21:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 9 楼』:  

用sed

2006-12-5 23:08
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
knight1006
初级用户





积分 29
发帖 16
注册 2005-11-15
状态 离线
『第 10 楼』:  

不用它,它对中文支持不好

2006-12-5 23:19
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: