Chinaunix
标题:
資料欄的工作
[打印本页]
作者:
c9992
时间:
2007-10-31 14:12
标题:
資料欄的工作
我有一個檔案 格試如下 第一個欄位是日期 後面是資料 但是我想比對 如果第二格大於第一格的話 前後加上1個x
請問這樣可以作的到嗎 謝謝
--------------------------------------原始檔案
20071029,104881,54140,139630,118,
20071030,104884,54140,139630,118,
20071031,104899,54140,139630,118,
--------------------------------------想要變成這樣
20071029,104881,54140,139630,118,
20071030,x104884x,54140,139630,118,
20071031,x104899x,54140,139630,118,
我猜是要用awk作
作者:
寂寞烈火
时间:
2007-10-31 14:22
能用简体中文说一遍么?
作者:
springwind426
时间:
2007-10-31 14:25
awk 'BEGIN{FS=OFS=",";old=9999999}{tmp=$2}old<$2{$2="x"$2"x"}{print;old=tmp}'
复制代码
作者:
davistar
时间:
2007-10-31 14:32
呵呵 网中人大哥看着合适:)
审错题鸟。。。:mrgreen:
复制代码
[
本帖最后由 davistar 于 2007-10-31 15:03 编辑
]
作者:
springwind426
时间:
2007-10-31 14:55
原帖由
davistar
于 2007-10-31 14:32 发表
呵呵 网中人大哥看着合适:)
awk 'BEGIN{OFS=FS=","}{if(NR==1)a=$2;$2=($2
有逻辑错误,他的要求是如果上一行的第二字段小于本行的第二字段就加X,因此,需要保存上一行的第二字段的值,而不是仅仅与第一行的第二字段值进行比较
作者:
davistar
时间:
2007-10-31 15:02
标题:
回复 #5 springwind426 的帖子
晕 理解错lz的意思了 谢谢spring兄提醒
作者:
linuxnextyear
时间:
2007-10-31 16:03
20071029,104881,54140,139630,118,
20071030,104884,54140,139630,118,
20071031,104899,54140,139630,118,
借地方问一下,我要实现输出倒数第二列怎么写?(或者倒数第n列?)
作者:
davistar
时间:
2007-10-31 16:07
标题:
回复 #7 linuxnextyear 的帖子
awk -F, '{NF=NF-n;print $NF}' file
n是自然数
复制代码
作者:
linuxnextyear
时间:
2007-10-31 16:18
多谢
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2