shell脚本的规范格式写法

10915阅读 0评论2010-07-25 greendays
分类:

学习一下狼兄的脚本,这个shell脚本写的很规范:
本帖最后由 kwokcn 于 2010-07-23 17:47 编辑
  1. #!/bin/bash

  2. # usage : command file1 [file2 file3 ... filen]

  3. sort -t\. -k1,1n -k2,2n -k3,3n -k4,4n $* | awk '

  4. # trans ip to number
  5. function ip2n(ip) { split(ip,a,"."); return a[1]*256^3+a[2]*256^2+a[3]*256+a[4] }

  6. # trans number to ip
  7. function n2ip(n) { return int(n/256^3)"."int(n%256^3/256^2)"."int(n%256^2/256)"."int(n%256) }

  8. # main
  9. {
  10.     ipmin=ip2n($1)
  11.     ipmax=ip2n($2)

  12.     if (!min) { min=ipmin; max=ipmax; next }

  13.     if (ipmin<=max+1) max=ipmax>max?ipmax:max
  14.     else { print n2ip(min),n2ip(max); min=ipmin; max=ipmax }
  15. }
  16. END {
  17.     print n2ip(min),n2ip(max)
  18. }'
复制代码
上一篇:for循环如何求得2个循环值
下一篇:非交互 KSH 脚本两次确认