Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1216164
  • 博文数量: 275
  • 博客积分: 6445
  • 博客等级: 准将
  • 技术积分: 2863
  • 用 户 组: 普通用户
  • 注册时间: 2006-03-04 23:22
文章分类

全部博文(275)

文章存档

2024年(4)

2023年(5)

2022年(3)

2021年(18)

2020年(9)

2019年(1)

2018年(13)

2017年(11)

2015年(9)

2013年(2)

2012年(4)

2011年(24)

2010年(114)

2009年(6)

2008年(29)

2007年(13)

2006年(10)

我的朋友

分类: LINUX

2008-02-21 10:52:27

       内建函数NR是next record的意思!!

print叙述

print 叙述用在简单、标准的输出格式。叙述的格式如下所示:

print item1, item2, ...

输出时,各个 item 之间会以一个空白分开,最後会换行(newline)。

如果 'print'叙述之後没有跟著任何东西,它与'print $0'的效
果一样,它会印出现在的记录(record)。要印出空白行可使用'print
""'。 印出一段固定的文字,可用双引号将文字的两边括起来,例如
'print "Hello there"'。

这里是一个例子,它会把每个输入记录的前二个栏位印出:

gawk '{print $1,$2}' shipped

printf叙述

printf 叙述会使得输出格式较容易精确地控制。printf 叙述可以
指定每个 item 印出的宽度,也可以指定数字的各种型式。

printf 叙述的格式如下:

printf format, item1, item2, ...

print 与 printf 的差别是在於 format, printf 的引数比 print
多了字串 format。format 的型式与 ANSI C 的 printf 之格式相同。

printf 并不会做自动换行的动作。内建变数 OFS 与 ORS 对 printf 叙
述没有任何影响。

格式的指定以字元'%'开始,後面接著格式控制字母。

格式控制字母如下所示:

'c' 将数字以 ASCII 字元印出。
例如'printf "%C",65'会印出字元'A'。

'd' 印出十进位的整数。

'i' 印出十进位的整数。

'e' 将数字以科学符号的形式印出。
例如

print "$4.3e",1950

结果会印出'1.950e+03'。

'f' 将数字以浮点的形式印出。

'g' 将数字以科学符号的形式或浮点的形式印出。数字的绝对值如果
大於等於0.0001则以浮点的形式印出,否则以科学符号的形式印
出。

'o' 印出无号的八进位整数。

's' 印出一个字串。

'x' 印出无号的十六进位整数。10至15以'a'至'f'表示。

'X' 印出无号的十六进位整数。10至15以'A'至'F"表示。

'%' 它并不是真正的格式控制字母,'%%"将印出"%'。

在 % 与格式控制字母之间可加入 modifier,modifier 是用来进一
步控制输出的格式。可能的 modifier 如下所示:

'-' 使用在 width 之前,指明是向左靠齐。如果'-'没有出现,则会在
被指定的宽度向右靠齐。例如:

printf "%-4S", "foo"

会印出'foo '。

'width' 这一个数字指示相对应的栏位印出时的宽度。例如:

printf "%4s","foo"

会印出' foo'。

width 的值是一个最小宽度而非最大宽度。如果一个 item 的
值需要的宽度比 width 大,则不受 width 的影响。例如

printf "%4s","foobar"

将印出'foobar'。

'.prec' 此数字指定印出时的精确度。它指定小数点右边的位数。如
果是要印出一个字串,它指定此字串最多会被印出多少个字
元。


 。

阅读(1317) | 评论(0) | 转发(0) |
0

上一篇:pam mysql0.7RC1

下一篇:用gcc批量建mysql库表

给主人留下些什么吧!~~