标题: [其他] 【已解决】gawk:按行分割文本,如何指定输出路径 [打印本页]
作者: 思想之翼 时间: 2023-7-26 22:42 标题: 【已解决】gawk:按行分割文本,如何指定输出路径
本帖最后由 思想之翼 于 2023-7-28 13:19 编辑
- gawk "NR%%100==1{close(n\".txt\");++n}{print>n\".txt\"}" "d:\data1\a.txt"
复制代码
上述代码,将分割后的各个文本,写入代码所在的文件夹,如何写入指定的 d:\data2\ 文件夹?【非移动删除的方法】
作者: 447219071 时间: 2023-7-27 00:11
可以在输出文件路径前加上 d:\data2\ 目录的路径,如下所示:- gawk "NR%%100==1{close(n\".txt\");++n}{print>n\"d:\data2\".txt\"}" "d:\data1\a.txt"
复制代码
这样就可以将分割后的各个文本写入指定的 d:\data2\ 文件夹中。请注意,在输出文件路径中使用双反斜杠 \\ 来转义反斜杠 \,以避免路径中的反斜杠被解释为转义字符。
作者: 思想之翼 时间: 2023-7-27 00:43
本帖最后由 思想之翼 于 2023-7-27 11:00 编辑
回复 2# 447219071
测试 d:\data2\ d:\\data2\\ 都没通过,恳望指点,谢谢!
作者: 77七 时间: 2023-7-27 11:34
外行思路...- @echo off
- pushd "d:\data2\"
- gawk "NR%%100==1{close(n\".txt\");++n}{print>n\".txt\"}" "d:\data1\a.txt"
- popd
复制代码
作者: hfxiang 时间: 2023-7-27 17:14
回复 1# 思想之翼 - gawk "NR%100==1{close(\"d:/data2/\"n\".txt\");++n}{print>\"d:/data2/\"n\".txt\"}" "d:\data1\a.txt"
复制代码
作者: 思想之翼 时间: 2023-7-27 19:54
回复 5# hfxiang
感谢!我自己测试,未能分割文件,只生成一个名为“.txt”的文件,内容与原文件一样。
作者: hfxiang 时间: 2023-7-28 08:45
回复 6# 思想之翼
5楼的指令俺在命令行中测试完全正常(用单百分号:%),如果在脚本中执行,需用双百分号(双百分号:%%),如下,经测试亦完全正常- gawk "NR%%100==1{close(\"d:/data2/\"n\".txt\");++n}{print>\"d:/data2/\"n\".txt\"}" "d:\data1\a.txt"
复制代码
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |