找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 10336|回复: 3

gawk语句内重定向到指定路径时为什么会出错

[复制链接]
发表于 2018-8-14 01:14:54 | 显示全部楼层 |阅读模式
本帖最后由 CrLf 于 2018-8-15 21:00 编辑

使用如下命令实现:如果字段1为空,那么就将该行输出到一个文件中,如果不为空,那么输出到另一个文件中
gawk -F "|" "NR>1 {OFS=\"^|\";if ($1==\"\") print $0>>\"a_tmp.txt\"; else print $0>>\"b_tmp.txt\";}"

为何我将路径写的长一些就不行了呢?
gawk -F "|" "NR>1 {OFS=\"^|\";if ($1==\"\") print $0>>\"F:\a_tmp.txt\"; else print $0>>\"F:\b_tmp.txt\";}"
发表于 2018-8-14 08:06:15 | 显示全部楼层
路径里的\要用\转义的。
即\要写成\\
 楼主| 发表于 2018-8-14 08:53:38 | 显示全部楼层
回复 2# cfwyy77_bat


    那我用变量也不行!

    就是我写成 gawk -F "|" "NR>1 {OFS=\"^|\";if ($1==\"\") print $0>>\"%aaa%\"; else print $0>>\"%bbb%\";}"
发表于 2018-8-15 20:58:05 | 显示全部楼层
  1. gawk -F "|" "NR>1 {OFS="^|";if ($1=="") print >"F:\\a_tmp.txt"; else print >"F:\\b_tmp.txt"}" 1.txt
复制代码
我这里测试没有问题,请把你的测试数据、报错信息、gawk版本发出来看看。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-17 06:00 , Processed in 0.020112 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表