📄 00000019.htm
字号:
。就是: <BR> <BR> total 2164 <BR> <BR> drwxr-xr-x 3 <BR> <BR> -rw-r--r-- 1 <BR> <BR> -rw-r--r-- 1 <BR> <BR> -rw-r--r-1 <BR> <BR> ………………… <BR> <BR> 如果你要精确地控制输出,也可以使用printf命令,这个命令的格式是: <BR> <BR> printf format, item1, item2, ... <BR> <BR> format参数就是C语言里面的格式控制符,例如%c,%d,%f等等。在 % 与格式控制 <BR>字母之间可加入 modifier,modifier 是用来进一步控制输出的格式。可能的 modifie <BR>r 如下所示: <BR> <BR> '-' 使用在 width 之前,指明是向左靠齐。如果'-'没有出现,则会在被指定的 <BR>宽度向右靠齐。例如: <BR> <BR> printf "%-4S", "foo"会印出'foo '。 <BR> <BR> 'width' 这一个数字指示相对应的栏位印出时的宽度。例如: <BR> <BR> printf "%4s","foo" 会印出' foo'。 <BR> <BR> width 的值是一个最小宽度而非最大宽度。如果一个 item 的值需要的宽度 <BR>比 width 大,则不受 width 的影响。例如printf "%4s","foobar"将印出'foobar'。 <BR> <BR> '.prec' 此数字指定印出时的精确度。它指定小数点右边的位数。如果是要印出一个 <BR>字串,它指定此字串最多会被印出多少个字符。 <BR> <BR> 作为一种脚本语言,gawk允许使用变量,定义变量非常简单,就是直接用等号对它赋 <BR>值。为了在gawk程序的开始处对变量赋值,gawk专门提供了BEGIN语句,这个语句将在所 <BR>有行被读入之前执行,而且只执行一次,通常用它来执行初始化命令,例如 <BR> <BR> BEGIN { sum=0;count=0;average=0.0;} <BR> <BR> 对于变量可以使用数学表达式进行运算,运算符包括常见的加减乘除算符,以及^(乘 <BR>方),%(取余)和著名的++,--。不过注意gawk在做除法的时候总是使用浮点除法,除了 <BR>取余算符%。 <BR> <BR> 函数 <BR> <BR> 另外,gawk包含下列函数: <BR> <BR> 数学函数 <BR> <BR> atan2(x,y) y/x的正切 <BR> <BR> cos(x) 余弦函数 <BR> <BR> sin(x) 正弦函数 <BR> <BR> int(x) 取整 <BR> <BR> log(x) 取自然对数 <BR> <BR> exp(x) 指数函数 <BR> <BR> rand(x) 生成一个0到1之间的随机数 <BR> <BR> srand() 初始化随机数发生器 <BR> <BR> systime() 返回从1970年1月1日0:00到当前时间的秒数 <BR> <BR> sqrt(x) 取x的平方根 <BR> <BR> 字符串函数 <BR> <BR> index(string1,string2 ) <BR> <BR> 它会在string1 里面,寻找string2 第一次出现的地方,返回值是字串string2出 <BR>现在字串string1 里面的位置。如果找不到,返回值为 0。 <BR> <BR> 例如: <BR> <BR> print index("peanut","an") <BR> <BR> 会印出 3。 <BR> <BR> length(string) <BR> <BR> string字符串的长度 <BR> <BR> 例如: <BR> <BR> length("abcde") <BR> <BR> 是 5。 <BR> <BR> match(string,regexp) <BR> <BR> match 函数会在字串 string 里面,寻找符合 regexp 的最长、最靠左边的子字 <BR>串。返回值是 regexp 在 string 的开始位置,即 index值。这个函数会设定内部变量 <BR> RSTART 等於 index,内部变量RLENGTH 等於符合的子串个数。如果不符合,则会设定 <BR> RSTART 为0、RLENGTH 为 -1。 <BR> <BR> sprintf(format,expression1,...) <BR> <BR> 跟C语言的sprintf差不多。 <BR> <BR> 例如: <BR> <BR> sprintf("pi = %.2f (approx.)',22/7) <BR> <BR> 传回的字串为"pi = 3.14 (approx.)" <BR> <BR> <BR> sub(regexp, replacement,target) <BR> <BR> 在字串 target 里面,寻找符合 regexp 的最长、最靠左边的地方,并且以字串 <BR> replacement 代替最左边的 regexp。 <BR> <BR> 例如: <BR> <BR> str = "water, water, everywhere" <BR> <BR> sub(/at/, "ith",str) <BR> <BR> 结果字串str会变成 <BR> <BR> "wither, water, everywhere" <BR> <BR> <BR> gsub(regexp, replacement, target) <BR> <BR> gsub 与前面的 sub 类似。在字串 target 里面,寻找符合 regexp 的所有地方 <BR>,以字串 replacement 代替所有的 regexp。 <BR> <BR> 例如: <BR> <BR> str="water, water, everywhere" <BR> <BR> gsub(/at/, "ith",str) <BR> <BR> 结果字串str会变成 <BR> <BR> 'wither, wither, everywhere" <BR> <BR> substr(string, start, length) <BR> <BR> 传回字串 string 的子字串,这个子字串的长度为 length 个字符,从第 start <BR> 个位置开始。 <BR> <BR> 例如: <BR> <BR> substr("washington",5,3) <BR> <BR> 传回值为"ing" <BR> <BR> 如果 length 没有出现,则传回的子字串是从第 start 个位置开始至结束。 <BR> <BR> 例如: <BR> <BR> substr("washington",5) <BR> <BR> 传回值为"ington" <BR> <BR> tolower(string) <BR> <BR> 将字串string的大写字母改为小写字母。 <BR> <BR> 例如: <BR> <BR> tolower("MiXeD cAsE 123") <BR> <BR> 传回值为"mixed case 123" <BR> <BR> <BR> toupper(string) <BR> <BR> 将字串string的小写字母改为大写字母。 <BR> <BR> 例如: <BR> <BR> toupper("MiXeD cAsE 123") <BR> <BR> 传回值为"MIXED CASE 123" <BR> <BR> 其他函数 <BR> <BR> system(command) <BR> <BR> 此函式允许使用者执行作业系统的指令,执行完毕後将回到 gawk <BR> <BR> 程式。 <BR> <BR> 例如: <BR> <BR> BEGIN {system("ls")} <BR> <BR> 控制流 <BR> <BR> 在gawk命令脚本中可以使用控制流,主要是if,for,while等语句,用法和C语言相当 <BR>类似: <BR> <BR> <BR> if (condition) then-body [else else-body] <BR> <BR> 如果 condition 为真(true),则执行 then-body,否则执行 else-body。 <BR> <BR> 举一个例子如下: <BR> <BR> if (x % 2 == 0) <BR> <BR> print "x is even" <BR> <BR> else <BR> <BR> print "x is odd" <BR> <BR> <BR> while (condition) <BR> <BR> body <BR> <BR> while 语句测试 condition表达式。假如 condition 为真则执行 body 的语句。一次 <BR>执行完後,会再测试 condition,假如condition 为真,则 body 会再度被执行。这个 <BR>过程会一直被重复直到condition 不再是真。如果 condition 第一次测试就是伪(fals <BR>e),则body 从没有被执行。 <BR> <BR> 下面的例子会印出每个输入行的前三个栏位。 <BR> <BR> gawk '{ i=1 <BR>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -