面向黑客的Linux,第7部分:BASH脚本基础
我认为黑客都必须有编写脚本的能力。Linux管理员都必须能够编写脚本。随着WindowsPowerShell的到来,越来越多的Windows管理员需要编写脚本来执行自动化任务并提高效率。我们经常需要自动化使用多个命令,有时来自多个工具。要成为一名黑客,您不仅需要具备高级的shell脚本编写技能,还需要能够使用一种广泛使用的脚本语言编写脚本,例如Ruby(Metasploit漏洞利用是用Ruby编写的)、Python(许多黑客工具都是Python脚本)或Perl(Perl是最好的文本操作脚本语言)。
我们将从基本的shell脚本开始,到高级的shell脚本,然后是这些脚本语言中的每一种,我们的最终目标是来开发我们自己顺手的工具。
第1步:shells的类型
shell是用户和操作系统之间的接口。这使我们能够运行命令、实用程序、程序、操作文件等。有许多不同的shell可用于Linux。其中包括Kornshell、Zshell、Cshell和Bourneagainshell(或BASH)。
由于几乎所有Linux和UNIX发行版(包括MacOSX和Kali)都可以使用BASHshell,因此我们将在这里专门使用BASHshell。
第2步:BASH基础知识
要创建一个shell脚本,我们需要从一个文本编辑器开始。您可以使用Linux中的任何文本编辑器,包括vi、vim、emacs、gedit、kate等,但我将在这些教程中使用Leafpad。
第3步:内置BASH命令
除了能够从BASHshell脚本运行任何系统命令、应用程序之外,BASHshell还包含一些它自己的命令。这些包括;
:,.,break,cd,continue,eval,exec,exit,export,getopts,hash,pwd,
readonly,return,set,shift,test,[,times,trap,umaskandunset,alias,bind,builtin,