Board logo

标题: gawk语句内重定向到指定路径时为什么会出错 [打印本页]

作者: shootman2    时间: 2018-8-14 01:14     标题: gawk语句内重定向到指定路径时为什么会出错

本帖最后由 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\";}"
作者: cfwyy77_bat    时间: 2018-8-14 08:06

路径里的\要用\转义的。
即\要写成\\
作者: shootman2    时间: 2018-8-14 08:53

回复 2# cfwyy77_bat


    那我用变量也不行!

    就是我写成 gawk -F "|" "NR>1 {OFS=\"^|\";if ($1==\"\") print $0>>\"%aaa%\"; else print $0>>\"%bbb%\";}"
作者: Batcher    时间: 2018-8-15 20:58

  1. gawk -F "|" "NR>1 {OFS=\"^|\";if ($1==\"\") print >\"F:\\a_tmp.txt\"; else print >\"F:\\b_tmp.txt\"}" 1.txt
复制代码
我这里测试没有问题,请把你的测试数据、报错信息、gawk版本发出来看看。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2