一、理解shell脚本语言

shell脚本是应用c语言进行编写的程序,执行shell程序,底层会执行c语言的逻辑代码。shell是命令行语言,也是一种程序设计语言。

1.1 头文件

#!bin/bash xx

在文件的头一行须要标注#!bin/bash,该行的意思是示意该文件为shell程序,应用bin/bash作为解释器,对立还能够应用其余的解释器如:/usr/bin/csh等等

二、编写语法

2.1 申明变量

value="xxxx"

申明变量赋值时”=”号左右不能有空格

2.2 应用变量

${value} 这样应用变量,用{}标注变量的边界

2.3 应用for

应用for循环,个别为 for x in 范畴 ; do xx done;

for item in `ls`for item in 'letter'array=(dfa dfas dasf)for item in ${array}for((i=0;i<10;i++))

3. 替换命令

应用$()和``都能替换命令,也进行能够执行命令并且将值进行赋值给对应的变量。

for item in `ls`;do echo item;done

其中$()和``的作用统一

4. 参数操作

在执行sh文件时,能够传递参数,如 sh sh.sh param1

5. 执行命令

在shell中执行命令能够应用如下形式

lsCommond="ls"${lsCommond}

能够应用(ls)进行执行。

6. eval命令

当咱们在命令行前加上eval时,shell就会在执行命令之前扫描它两次.eval命令将首先会先扫描命令行进行所有的置换,而后再执行该命令。该命令实用于那些一次扫描无奈实现其性能的变量。该命令对变量进行两次扫描。

lsc="ls"lsCommond="${lsc}"eval ${lsCommond}

如果不加eval,则会无反馈,因为${lsc}不会被解析成ls