BASH脚本和AWK有什么区别?
在什么情况下我会选择其中之一?
BASH脚本和AWK有什么区别?
在什么情况下我会选择其中之一?
我认为你所指的bash脚本
是指执行所有操作的通用脚本。
但是,awk基本上是一个独立的工具,可以独立调用,甚至不需要调用bash shell(或任何shell)!正如tristan
所提到的,它是一个独立的工具!
bash脚本
用于使用shell执行任何类型的操作!实际上,您可以通过其他过滤器甚至grep regex直接在bash脚本中实现awk
可以实现的任何操作。另外,您还可以执行许多其他无法通过awk
实现的操作!
awk
是一个优秀的过滤器和报表编写工具。许多UNIX实用程序生成行和列的信息。 AWK是处理这些行和列的优秀工具,并且比大多数传统编程语言更容易使用AWK。它可以被认为是一个伪C解释器,因为它理解与C相同的算术运算符。 AWK还具有字符串操作函数,因此它可以搜索特定字符串并修改输出。 AWK还具有关联数组,这非常有用,并且是大多数计算机语言缺少的功能。
Awk是另一个可以轻松从Bash脚本中调用的工具。
当您需要过滤数据并且Bash内置函数无法(或不易)满足您的需求时,您可以调用awk。您可以使用Bash定义逻辑流程,并使用像sed
或awk
这样的工具来操作数据或执行任务。Awk非常擅长从文件中过滤数据。
值得一提的是,我从未听说过有人认为脚本因为调用了Awk而不是“Bash脚本”。