shell脚本语言很适合处理纯文本类型数据,且Linux的哲学思想就是一切皆文件,如日志、配置文件、文本、网页文件,大多数都是纯文本类型的,因此shell可以方便的进行文本处理,好比强大的Linux三剑客(grep, sed, awk)
shell脚本语言属于一种弱类型语言,无需声明变量类型, 直接定义使用。shell语言定义的变量,数据类型默认都是字符串类型
弱类型语言,在定义变量的时候,不用主动声明改类型。
linux下的shell
执行脚本的方式
指定解释器:
! /bin/bash
! /bin/perl
! /bin/python
…
bash script.sh
或sh script.sh
,文件本身没权限执行,没x权限,则使用该方法,或脚本未指定解释器,重点推荐的方式- 使用 绝对/相对 路径执行脚本,需要文件含有x权限,需要指定解释器
source script.sh
或者. script.sh
,代表 执行的含义,可以不指定解释器。source等于点 .- 少见的用法,sh<script.sh
Perl语言, 擅长支持强大的正则表达式, 以及运维工具的开发 Python语言, 明星语言, 不仅适用于脚本程序开发, 也擅长Web页面开发, 如(系统后台, 资产管理平台) , 爬虫程序开发, 大量Linux运维工具也由python开发, 甚至于游戏开发也使用
shell的优势
虽然有诸多脚本编程语言,但是对于Linux操作系统内部应用而言, shell是最好的工具, Linux底层命令都支持shell语句,以及结合三剑客(grep,sed、awk)进行高级用法。
擅长系统管理脚本开发,如软件启停脚本、监控报警脚本、日志分析脚本
每个语言都有自己擅长的地方,扬长避短,达到高效运维的目的是最合适的。