Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2045113
  • 博文数量: 470
  • 博客积分: 10206
  • 博客等级: 上将
  • 技术积分: 5620
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-03 12:50
文章分类

全部博文(470)

文章存档

2012年(1)

2011年(18)

2010年(47)

2009年(404)

分类:

2009-07-29 08:58:28

| | | |
[] [] [] [] []
  帅哥 (天堂鸟)
侠客



CU编号: 702381
注册:2008-5-8
最后登录: 2009-07-28
帖子:
精华:0







状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-27 23:06 

如:
12  112232
1     234
2     23234
3     234
44   2
123  2332
处理后要求:
第一列保证3位,不足位数前面补0;
第二列保证6位,不足位数前面补0;
如下:
012  112232
001  000234
002  023234
003  000234
044  000002
123  002332

如何处理较简单?



您对本贴的看法:

__________________________________

I think I can fly not only far but high!
------------------------------------------------
archlinux 2.6.30-ARCH #1 SMP PREEMPT  i686 Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz GenuineIntel GNU/Linux
| | |
  帅哥 (狼烟)
天使
八十万色狼总教头



CU编号: 547805
注册:2007-4-5
最后登录: 2009-07-29
帖子:
精华:0







来自:北京
状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-27 23:08 



CODE:
awk '{printf("%03d %06d\n",$1,$2)}' URFILE




您对本贴的看法:
| | |
  帅哥 (天堂鸟)
侠客



CU编号: 702381
注册:2008-5-8
最后登录: 2009-07-28
帖子:
精华:0







状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-27 23:11 

回复 #2 kwokcn 的帖子

狼烟真是快呀,学习了。
o 用printf "%3d %6d\n" 没有实现,谢谢



您对本贴的看法:

__________________________________

I think I can fly not only far but high!
------------------------------------------------
archlinux 2.6.30-ARCH #1 SMP PREEMPT  i686 Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz GenuineIntel GNU/Linux
| | |
  帅哥 (天堂鸟)
侠客



CU编号: 702381
注册:2008-5-8
最后登录: 2009-07-28
帖子:
精华:0







状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-27 23:16 

回复 #2 kwokcn 的帖子

再请教一下,要是不使用0填充,而使用1填充该如何写呢?



您对本贴的看法:

__________________________________

I think I can fly not only far but high!
------------------------------------------------
archlinux 2.6.30-ARCH #1 SMP PREEMPT  i686 Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz GenuineIntel GNU/Linux
| | |

圣骑士



CU编号: 2148600
注册:2009-7-19
最后登录: 2009-07-28
帖子:
精华:0







状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-27 23:35 

回复 #3 yyt030 的帖子

狼烟大哥的方法可以实现呀!
[root@localhost tmp]# awk '{printf("%03d %06d\n",$1,$2)}' file
012 112232
001 000234
002 023234
003 000234
044 000002
123 002332



您对本贴的看法:
| | |
  帅哥 (狼烟)
天使
八十万色狼总教头



CU编号: 547805
注册:2007-4-5
最后登录: 2009-07-29
帖子:
精华:0







来自:北京
状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-27 23:37 

直接格式化我还真不清楚怎么写~:)



您对本贴的看法:
| | |

大天使



CU编号: 347943
注册:2005-12-11
最后登录: 2009-07-27
帖子:
精华:0







状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-27 23:46 



QUOTE:
原帖由 yyt030 于 2009-7-27 23:16 发表
再请教一下,要是不使用0填充,而使用1填充该如何写呢?

awk '{for (i=1;i<=3-length($1);i++) printf 1;printf $1" ";for (i=1;i<=6-length($2);i++) printf 1;print $2}' file



您对本贴的看法:

__________________________________

shell新手&&awk新手
http://blog.chinaunix.net/u3/91453/


| | |
  帅哥 (天堂鸟)
侠客



CU编号: 702381
注册:2008-5-8
最后登录: 2009-07-28
帖子:
精华:0







状态:...离线...

[] [] [博客]


[] 顶部
发表于 2009-7-28 22:39 

回复 #7 ywlscpl 的帖子

厉害,tks



您对本贴的看法:

__________________________________

I think I can fly not only far but high!
------------------------------------------------
archlinux 2.6.30-ARCH #1 SMP PREEMPT  i686 Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz GenuineIntel GNU/Linux
| | |

» » »

阅读(605) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~