分享
 
 
 

change.exe

王朝百科·作者佚名  2010-08-14
窄屏简体版  字體: |||超大  

示例:

change a.txt /from "&H0D0A" /to null

change a.txt /from "。" /to "。&H0D0A0D0A"

===================================================================

中文帮助

CHANGE.EXE 是一个以命令行方式处理对文件的修改工具,目标文件可以是任意大小任意格式。可以一次执行30条命令!非常地高效。

一、基本格式:

change 源文件.txt /from “被替换的串” /to “替换串” /in “条件”

二、已知限制是它不支持长名,可能不认识一些windows下的特殊字符作文件名。对此,解决之道是以短文件名访问(例如:myfile~1.txt)。

三、详细功能列表:

⒈处理的文件不限大小,前提是磁盘上至少要有与目标文件等大的预留空间,用于临时存放其副本;

⒉不仅处理文本文件,也处理二进制文件;

⒊替入和换出的字符串长度可以不同;

⒋可以指定替换行为只在特定行发生,特定行的标志是有另一个指定的字符(串)出现,这个字符串还允许大小写敏感;

⒌可以同时执行多达30个修改指令;

⒍支持子目录;

⒎兼容dos/Unix/Mac 文本格式;

⒏输入输出字符串可以是文本的(Ascii),也可以是十六进制值或十进制值;

⒐替换速的特快;

⒑具有备份选项,以防源文件可能损坏;

⒒替换工作可以交互式进行(控制台);

⒓除命令行、控制台它还允许把多条指令组合编制为一个控制文件一次执行;

⒔可以使用布尔变量;

⒕源文件名支持通配符;

⒖"*"用在指定的被修改字符串时,表示由当前位置到行尾的整个子串;

⒗在指定目标字符串时,可以设定“列”,仅当字符位于此范围内时才发生替换;

⒘可以按文件属性排除某个文件不被处理;

⒙可以排除某些行不处理;

⒚按ESC可以中止处理进程。

四、如何指定参数

当程序运行时,它将以如下三种方式读取参数:

⒈INI文件

⒉系统环境变量

⒊命令行

先看最常用的命令行语法。

To/From/In规范:

FROM 被替换的文字

TO 用于替换的文字

TO (可选)指定发生替换行为的特定行标志

举例,设test.txt文件包含如下两行:

The quick brown fox jumped over

the lazy brown dog.

我们输入:

change /from brown /to red /fox

则文件变为:

The quick red fox jumped over

the lazy brown dog.

即:有出现"fox"的那行"brown:被替换为"red",其它行不变。

如果所指定字符串包含空格或其他特殊字符,请用双引号,比如:

CHANGE test.TXT /FROM "my music" /TO "my video"

或者用十六进制字符处理特殊字符,如:

CHANGE test.TXT /FROM &H0D0A0D0A /TO &H0D0A

(删除多余的行)

设定列宽的例子:

change test.txt /from ok 5/10 /to no

只替换从第5列到第10列的ok 为 no,这个功能是按首字符认定位置的,比如有一个“ok”位于4,5列那么它不会被替换。

仅删除的例子:

change test.txt /from no /to null

(即:删除所有的no)

如果要忽略英文字母的大小写,使用参数 /I

与DOS类似,可以用参数 /s 处理所有子目录中文件的替换工作

替换指定行的例子:

change test.txt /from no /to re /lines 3-8 30-50

(即:只替换3到8行和30到50行的字符)

出于安全目的,该程序总要自动生成一个临时文件备份源文件,如果用 /N文件名 参数另指定一个输出文件,则没有临时文件输出。

要消除文件末尾多余的空格,可以用参数 /trim

使用布尔变量的例子:

CHANGE TEST.TXT /FROM Apple /TO Banana /IN (red OR brown) AND NOT Pear

将替换apple为banana,但所在行必须有red或brown出现,并且没有Pear出现

本程序的返回误码意义:

0 无错,有修改

1 无错,无修改

253 提前中止

254 内部错误

255 语法错

========================================================================================

『第 33 楼』:

看样子没什么问题嘛,如何不行?

change不是sed

没有那么多的正则标记

至于不包含指定字符的行

是有一个/v的开关

类似find

-------------------------------------------------

『第 34 楼』:

哦,明白了

你没有注意到change是for dos的程序吗?

在win32 console cmd下运行要先初始化中文环境的

chcp 437>nul & graftabl 936>nul

-------------------------------------------------

『第 40 楼』:

引用:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

确实是这个问题,谢谢!

不过我还是想问一下 在change 中怎么表示不包括某字符的行?

我的思路是 先将所有句号都替换成回车、再删除所有不包含句号的行的回车

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

真是较真的厉害

既然已经有了合适的方案

何必要舍易求难?

change有两种工作模式

一种是binary(block)模式

也就是我提到全文文本替换

按块读取字节然后进行替换

对0d0a视同普通字节

另一种是text(record)模式

也就是我说过的行缓冲模式

按行读取文本然后进行替换

对0d0a会作特殊处理

而如果/from /to /in中使用&H十六进制表示的字符

则直接进入binary模式

而/in开关则需要text模式的支持

所以你的替换操作是无效的

下面的命令是个示例

change esta.txt /nest.txt /from "文件" /to "file" /in not "File"

-------------------------------------------------

按照change的思路,那么sed就可以这样改进一下了

CODE: [Copy to clipboard]

--------------------------------------------------------------------------------

sed ":nt; $!{N; s/

//; tnt}; s/。/&

/g" myfile.txt

--------------------------------------------------------------------------------

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有