awk for win基本跟linux下的awk一样,唯独那三个符号怎么也弄不成功。
比如:awk "{print $1 "\t" $4}" file
肯定出问题。
还有就是printf("%.2f",$2) 也肯定出问题。真是压抑,在linux下,好简单的东东,怎么就失灵了。
awk for win能计算,能整理数据,就是这个格式输出总是出错。有人能帮帮忙吗?太需要了。
奇怪的awk for win
-
- 帖子: 1983
- 注册时间: 2010-05-01 21:23
-
- 帖子: 1983
- 注册时间: 2010-05-01 21:23
Re: 奇怪的awk for win
意思是无法设定:tab,回车等字符。看来没人玩这东东的。
-
- 帖子: 1983
- 注册时间: 2010-05-01 21:23
Re: 奇怪的awk for win
试验了一整天,终于知道解决方法了:
要先声明变量
-v tab="\t"
然后才能使用。但在批处理里边,遇到了%这个难题,批处理已经使用了%,printf也要用%,这样就冲突了。
看看怎么才能恢复%的原意思。
要先声明变量
-v tab="\t"
然后才能使用。但在批处理里边,遇到了%这个难题,批处理已经使用了%,printf也要用%,这样就冲突了。
看看怎么才能恢复%的原意思。
- lilydjwg
- 论坛版主
- 帖子: 4249
- 注册时间: 2009-04-11 23:46
- 系统: Arch Linux
- 联系:
Re: 奇怪的awk for win
去找一个 bash/zsh 用吧。
- StarWingsss
- 帖子: 4
- 注册时间: 2016-07-22 10:50
- 系统: centos6.5
Re: 奇怪的awk for win
awk "{print $1 "\t" $4}" file 在linux不是用双引号的awk '1 {print $1 "\t" $4}' file
意思是对
1、file一行一行地读取
2、执行{}内的内容永远条件为真
3、打印每一行第一列的元素,接着打印一个tab,接着打印第四列的元素
4,重复步骤1,直到读取完毕所有行
printf和C语言的差不多
printf("%.2f",$2),对每第二列元素转换成float格式输出,并保留两位小数点
win的没用过
意思是对
1、file一行一行地读取
2、执行{}内的内容永远条件为真
3、打印每一行第一列的元素,接着打印一个tab,接着打印第四列的元素
4,重复步骤1,直到读取完毕所有行
printf和C语言的差不多
printf("%.2f",$2),对每第二列元素转换成float格式输出,并保留两位小数点
win的没用过