Awk入门
Completion requirements
数值(Numbers)
在 Awk 中,数值可以表示为 十进制整数 或 浮点数。例如:
789
3.141592654
+67
+4.6E3 # 4.6 × 10³ = 4600
-34
-2.1e-2 # -2.1 × 10⁻² = -0.021
注意:Awk 不支持 直接使用十六进制(hex)或八进制(octal)表示数值,但可以使用特定方法以十六进制或八进制格式输出数值,后面会介绍如何实现。
字符串(Strings)
字符串使用 双引号 ""
括起来。例如:
"All work and no play makes Jack a homicidal maniac!"
"1987A1"
"do re mi fa so la ti do"
Awk 还支持 空字符串(null string),表示方式是两个空引号:
""
1. 特殊字符
与 C 语言类似,Awk 允许使用特殊字符(Escape Sequences):
转义字符 | 功能 |
---|---|
\n |
换行(Newline) |
\t |
水平制表符(Tab,默认 8 个空格对齐) |
\b |
退格(Backspace) |
\r |
回车(Carriage Return) |
\f |
换页(Form Feed,用于打印时可能触发新页面) |
2. 在字符串中使用 "
和 \
如果需要在字符串中包含 双引号 "
,需要用 反斜杠 \
进行转义:
"This is a \"quoted\" word"
输出:
This is a "quoted" word
如果需要在字符串中包含 反斜杠 \
,需要输入两个反斜杠:
"This is a backslash: \\"
输出:
This is a backslash: \
如果 反斜杠 \
后面跟着未定义的字符(如 \m
),Awk 只会将其视为普通字符:
"Example \m"
输出:
Example \m
示例
1. 使用 print
输出特殊字符
BEGIN {
print "Hello\tWorld!" # "Hello World!"
print "Line 1\nLine 2" # 换行
print "Path: C:\\Program Files\\Awk" # Windows 路径
}
输出:
Hello World!
Line 1
Line 2
Path: C:\Program Files\Awk
2. 在字符串中嵌入双引号
BEGIN {
print "He said, \"Awk is powerful!\""
}
输出:
He said, "Awk is powerful!"
总结
- 数值:支持整数和浮点数,但 不支持 十六进制和八进制输入。
- 字符串:使用
""
表示,可包含 特殊字符(如\n
、\t
)。 - 转义字符:
\"
:表示双引号"
\\
:表示反斜杠\
\n
、\t
、\b
等特殊字符可用于格式化输出。
在下一章,你将学习 如何使用字符串和数值进行计算与处理! 🚀
Last modified: Thursday, 30 January 2025, 1:12 AM