Shell编程
Posted hxwang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell编程相关的知识,希望对你有一定的参考价值。
前言:我的简历中写到熟悉linux常用命令,能进行shell编程,因此学习shell编程是必须的了。
阅读目录:
-
一、shell与bash
-
二、shell脚本的结构及执行
- 三、shell中的循环、if判断、函数
一、shell与bash
shell是用户与linux操作系统内核交互的接口程序,也是一个命令语言解释器?,将用户输入的命令解释给linux内核。
?Shell有很多种类,常见的有Bourne Shell(/usr/bin/sh或/bin/sh),Bourne Again Shell(/bin/bash),C shell(/usr/bin/csh),K Shell(/usr/bin/ksh),Shell for root(/sbin/sh)等。
bash是shell的一种,也是大多数linux系统默认使用的shell。
二、shell脚本的结构及执行
1.脚本格式
利用vi编辑器编写脚本?的格式是固定的,如下:
#!/bin/sh? //#!告诉系统其后面路径指定的程序就是解释此脚本文件的shell程序。
#comments //注释行
your commands go here
2.执行脚本
编辑完脚本后,保存文件名为filename.sh,在运行此脚本前,需要修改此脚本的可执行权限:
chmod+X fi?lename.sh
执行脚本:
./filename.sh
3.最简单的hello world 程序
#!?/bin/sh
a="hello world"; //变量赋值 variable_name = variable_value
echo $a;? //使用变量$variable或${variable}
三、shell中的循环、if 判断、函数
1. for循环?
for i in $(seq 0 5) ;do
echo $i?
done?
2.while循环
while 条件;do
command
done
比如: a=10
while ?[$a -ge 1];do
?echo $a
a=$[$a-1?]
done
3. if 判断语句; then command fi
if 判断语句; then command
else? command
fi
if 判断语句一; then command
elif判断语句二; then command
else command
fi
if((a<5)) 等同于 if[$a -lt 5]? -lt 小于
if((a>5))? 等同于 if[$a -gt 5] -gt 大于
?if((a>=5)) 等同于if[$a -ge 5] -ge 大于等于
?if((a<=5))等同于if[$a -le 5] -le 小于等于
if((a==5))等同于 if[$a -eq 5] -eq 等于
if((a!=5))?等同于 if[$a -ne 5] -ne 不等于
判断数值大小除了(())的形式外,还可以使用[]?
?数学计算要用[]括起来并且外面要带一个$
a=1
b=2
sum=$[$a+$b]?
4. shell脚本中的函数
function 函数名(){
command
}
在shell脚本中,函数要写在最前面。
function sum(){
sum=$[$1+$2]
echo $sum
}
sum $1 $2?
以上是关于Shell编程的主要内容,如果未能解决你的问题,请参考以下文章
Shell编程Shell中for循环while循环until循环语句