grep "variable1=" $file | awk '{printf("%5.3f,\n", $2)}' > .rpt_variable1
我的问题:
- “%5.3f”中的数字 5 有何作用?
- 2美元有什么意义?
- “awk”命令到底是做什么的?
答案1
awk 是一个程序,它将逐行扫描文件,查找指定的字符串,并更改它们(如果需要)。整个命令将查找某个文件($file)以查找其中包含“variable1=”的行。这是 grep 部分。
在本例中,Awk 将在这些行中查找第二个字段 ($2)。然后将字段 2 的值以 nnnnn.nn(n 为单个数字)的格式输出到文件 .rpt_variable1 中。这看起来像货币格式,因此字段 2 可能是美元值。 5 意味着它将把“美元”部分打印为 5 位数字(例如 12500 代表 12,500 美元,00543 代表 543 美元)。 5.2 中的 2 表示它将把小数点后的内容打印到两位,这对于美分来说是正常的。