Chinaunix

标题: 关于16进制数字补齐的问题 [打印本页]

作者: timdcn    时间: 2015-06-12 13:00
标题: 关于16进制数字补齐的问题
大家好,我有如下文件A:

f2
f5
f7
fc
0
5
9
e
12
17
1b
20
24

怎么才能在1位数字前自动补0,得到文件B:

f2
f5
f7
fc
00
05
09
0e
12
17
1b
20
24
作者: haooooaaa    时间: 2015-06-12 13:52
  1. [root@cAdmin 123]# awk '{if (length($0)==1){print "0"$0}else{print}}' 7
  2. f2
  3. f5
  4. f7
  5. fc
  6. 00
  7. 05
  8. 09
  9. 0e
  10. 12
  11. 17
  12. 1b
  13. 20
  14. 24
复制代码

作者: 关阴月飞    时间: 2015-06-12 13:53
  1. awk '{print length==1?0$0:$0}' urfile
复制代码

作者: haooooaaa    时间: 2015-06-12 13:58
  1. [root@cAdmin 123]# awk '{printf ("%02s\n",$0)}' 7
  2. f2
  3. f5
  4. f7
  5. fc
  6. 00
  7. 05
  8. 09
  9. 0e
  10. 12
  11. 17
  12. 1b
  13. 20
  14. 24
复制代码

作者: Herowinter    时间: 2015-06-12 14:29
回复 1# timdcn

建议用楼上的,但这样也可以.
  1. awk '{printf("%02x\n",strtonum("0x"$0))}' A
  2. f2
  3. f5
  4. f7
  5. fc
  6. 00
  7. 05
  8. 09
  9. 0e
  10. 12
  11. 17
  12. 1b
  13. 20
  14. 24
复制代码

作者: ly5066113    时间: 2015-06-12 14:33
回复 1# timdcn
  1. sed 's/^.$/0&/' file
复制代码

作者: timdcn    时间: 2015-06-12 14:39
回复 2# haooooaaa


    多谢,这个可行。
作者: timdcn    时间: 2015-06-12 14:39
回复 3# 关阴月飞


    学习了,高手。
作者: timdcn    时间: 2015-06-12 14:40
回复 6# ly5066113


    另一种思路,偶像啊。
作者: substr函数    时间: 2015-06-22 20:43
回复 4# haooooaaa


偶像啊。
作者: jason680    时间: 2015-06-23 06:11
回复 1# timdcn

正解/通解:
printf or sprintf

特解/它解:
  length, RE substitute   




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2