![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 19:01 |
共 47,811 主题排行 / 349,896 发帖 / 今日 1 篇 / 48,254 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » gawk命令该如何将带有长路径的文件放入到语句中? |
| 可打印版本 935 / 4 |
| 第1楼 youaoyi | 发表于 2008-09-17 10:35 |
| 初级用户 发帖 67 积分 154 | |
|
gawk命令该如何将带有长路径的文件放入到语句中? gawk -F"|" -v line=7 "NF!=line+1{print>\"新文本1.txt\"}NF==line+1{print>\"新文本2.txt\"}" a.txt
运行后可以将文本中分隔符为7个的行与不是7个的行分成两个文本。 为了方便操作并把新生成的文本放在原文件同目录下, 修改成下面这样后就不能正常运行了, gawk命令该如何将带有路径的文件放入到语句中呢? @echo off set path=%path%;"%ProgramFiles%\tools" echo. echo. set /p file= 请将要处理的文本拖放到这里: echo. set /p geshu= 此文本每行中应该有几个分隔符: set /a geshu+=1 echo. gawk -F"|" "NF!=%geshu%{print>\"%file%.新文本1.txt\"}NF==%geshu%{print>\"%file%.新文本2.txt\"}" "%file%" echo. pause ================================== 样本: a.txt 1|0757 | 合同 | 其它 | 殷晏 | 200837015029392 | 4000.0 | 2|0752 | 合同 | 经济原因 | 葛宝 | 200000026251 | 10232.35 | 3|2810 | 合同 | 经济原因 | 王传 | 2002810000013079 | 479.0 | 4|2810 | 合同 | 经济原因 | 王传 | 20028000013079 | 479.0 | 5|2810 | 合同 | 经济原因 | 趙朹 | 燕 | 200231000013099 | 939.0 | 6|2810 | 合同 | 经济原因 | 王传 | 200237281000013079 | 23.72 | 7|2810 | 合同 | 经济原因 | 王传 | 200237810000013079 | 260.28 | 8|0808 | 合同 | 经济原因 | 梁汝 | 2005300005411 | 280.0 | 9|1104 | 合同 | 其它 | 张成 | 2008374015010838 | 1630.0 | 10|1104 | 合同 | 其它 | 张成 | 200830015010838 | 36.0 | 11|1104 | 合同 | 其它 | 张成 | 200837015010845 | 10.0 | 12|1104 | 合同 | 其它 | 张成 | 20083715010845 | 10.0 | 13|1104 | 合同 | 其它 | 张成 | 20083602015010845 四湖 | [ Last edited by youaoyi on 2008-9-17 at 11:52 AM ] |
|
| 第2楼 HAT | 发表于 2008-09-17 11:27 |
| 版主 发帖 5,017 积分 9,023 | |
| 第3楼 youaoyi | 发表于 2008-09-17 11:44 |
| 初级用户 发帖 67 积分 154 | |
|
仍需要解决长目录名(比如桌面)下文档的拖入,以及待处理文本的文件名中带有特殊字符(比如 -.空格)的问题。
比如处理 “C:\Documents and Settings\Administrator\桌面\测试文本\T1. T 2.5.a---7.txt”这个文档就仍然会产生问题。 [ Last edited by youaoyi on 2008-9-17 at 11:51 AM ] |
|
| 第4楼 metoo | 发表于 2008-09-17 20:13 |
| 初级用户 发帖 93 积分 195 | |
|
脚本中使用路径类似注册表,需要双斜杠。本人很顽固,不管事情大小全部用脚本不用选项,自己试试吧
|
|
| 第5楼 HAT | 发表于 2008-09-17 20:59 |
| 版主 发帖 5,017 积分 9,023 | |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |