![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-09-15 12:28 |
共 47,812 主题排行 / 349,917 发帖 / 今日 0 篇 / 48,268 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 請文如何將一的檔案中的某一行文字換成你需要的文字 |
| 可打印版本 6,155 / 16 |
| 第1楼 dosfroum | 发表于 2005-12-07 13:04 |
| 初级用户 发帖 54 积分 154 | |
|
請文如何將一的檔案中的某一行文字換成你需要的文字 假如有一檔案 Try.txt內容如下
如果要用批次檔的方次把 這行至換成 這樣子應該要如何寫 謝謝 |
|
| 第2楼 dosfroum | 发表于 2005-12-11 10:57 |
| 初级用户 发帖 54 积分 154 | |
|
這個問題應該會有不少人遇到
或者是需要 是太簡單了 還是 無解阿 都沒消沒息的@@ |
|
| 第3楼 Wengier | 发表于 2005-12-11 11:29 |
| 系统支持 发帖 10,521 积分 27,736 | |
|
允許使用第三方工具麼?如果允許的話,可以試試XCHANGE之類的工具,一行就可以解決。例如試試這條命令(XCHANGE見附件):
XCHANGE Try.txt "CCC = 13.4" "CCC = 55.33" 附件 XCHANGE.EXE (22.04 KiB) |
|
| 第4楼 zreo | 发表于 2005-12-11 14:30 |
| 初级用户 发帖 14 积分 51 | |
|
有这个工具的应用祥解吗?
|
|
| 第5楼 arding | 发表于 2006-01-12 20:18 |
| 初级用户 发帖 38 积分 90 | |
| 第6楼 gmy | 发表于 2006-01-13 14:00 |
| 版主 发帖 392 积分 1,113 | |
|
我用 HEXC,只有5KB,比XCHANGE更小巧,但功能简单了一些,够用了。
hexc Try.txt Try.txt "CCC = 13.4" "CCC = 55.33" /u 附件 HEXC.rar (4.21 KiB) |
|
| 第7楼 vptdosme | 发表于 2006-01-14 22:17 |
| 初级用户 发帖 32 积分 97 | |
|
最好不要使用第三方工具,否则无法实现批处理的价值
|
|
| 第8楼 willsort | 发表于 2006-01-15 20:06 |
| 元老会员 发帖 1,512 积分 4,432 | |
|
Re vptdosme:
arding 兄在5楼提供的程序,即是 CMD 下没有使用第三方程序,若想在 Win9x/DOS 下实现,则会复杂很多,需要使用文本遍历算法或者利用ASCII汇编器echo出一个类似的替换程序进行替换,除非确有必要,一般不建议采用。 |
|
| 第9楼 dosfroum | 发表于 2006-02-16 09:57 |
| 初级用户 发帖 54 积分 154 | |
Originally posted by Wengier at 2005-12-11 11:29: 對不起這個方好好像不行 因為 CCC =12.5 #TEST 要是 CCC =12.5 #TEST 每個人修改後的空格數不固定所以我的標題才會寫 修改特定一行資料 而版大提出來的是字串 所以可否幫忙解決一下 謝謝 |
|
| 第10楼 dosfroum | 发表于 2006-02-16 10:09 |
| 初级用户 发帖 54 积分 154 | |
Originally posted by arding at 2006-1-12 20:18: 這個方式的確可以修改 但是有個問題 他會砍資料 就是當你的空格適用TAB鍵產生的 後段的資料全部砍掉 有辦法克服嗎 謝謝 修改 11b_ATTEN_DUT_PM 這行 原始資料 執行後資料 |
|
| 第11楼 willsort | 发表于 2006-02-16 11:45 |
| 元老会员 发帖 1,512 积分 4,432 | |
|
Re dosfroum:
这与 tab 没有什么关系,for /f 缺省时是承认 tab 作为切分符的。主要是因为原程序中遗漏了 %%l 的输出。例句如下: |
|
| 第12楼 220110 | 发表于 2006-02-16 22:52 |
| 荣誉版主 发帖 313 积分 718 | |
|
Re willsort:
你的程序有小失误,把分号给丢失了。另,程序没有产生 dosfroum 希望的“执行后资料”;而把后边注释跟进了。 |
|
| 第13楼 willsort | 发表于 2006-02-17 09:02 |
| 元老会员 发帖 1,512 积分 4,432 | |
|
Re 220110:
分号确实是我的疏忽,时间所限,没有进行严格的测试。至于注释,我的理解是 dosfroum 兄是希望保留着些注释信息的,至于这些信息失去了原来的对齐效果,那就是 for /f 的局限所在了,可以考虑将%%i %%j %%k %%l 之间的空格改为Tab,但是效果仍然未必十分理想。如果使用 awk 的话,就可以使用类似C语言 printf 的函数来实现文本对齐了。 |
|
| 第14楼 dosfroum | 发表于 2006-02-17 15:25 |
| 初级用户 发帖 54 积分 154 | |
|
請問可以改成 除了 那行以外的資料能不去變動嗎
好多空白被拿掉了 不過已經比之前的好很多了 感謝!! 執行前 執行後 |
|
| 第15楼 dosfroum | 发表于 2006-02-17 15:44 |
| 初级用户 发帖 54 积分 154 | |
|
對不起
發現另外一個問題 第一格的空白會增加 且值沒有修改到 批次檔 原始檔 批處理後 [ Last edited by dosfroum on 2006-2-17 at 15:45 ] |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |