Linux Shell

来源:互联网 发布:美容仪推荐知乎 编辑:程序博客网 时间:2024/05/17 21:46

Shell是一个用C语言编写的程序,它被称为用户使用Linux的桥梁。

Shell既是一种命令语言,又是一种程序设计语言。

Shell脚本(Shell Script),是一种为Shell编写的脚本程序。

Shell编程和Java、Pythno等一样。只需要一个文本编辑器和解释工具即可。

常见的Shell有:

Bourne Shell、Bourne Again Shell、C Shell、K Shell、Shell for Root

1.编写shell

vi ./example1.sh

#!/bin/bash

echo “hello shell”

Esc

:wq

2.运行shell

chmod 744 ./example1.sh

./example1.sh

Hello shell

chmod 644 ./example1.sh

/bin/bash ./example1.sh

3. Shell变量

#!/bin/bash

number_1=`expr 12345 + 54321`

time=`date`

expr length ${number_1}

echo ${#number_1}

echo ${number_1:0:5}

echo “number_1 :${number_1}”

echo ${number_1}

echo ${time}

4. Shell数组,bash支持一维数组,不支持二维数组,并且不限定数组的长度,数组下标由0开始

#!/bin/bash

arr1=(1 2 3 4 5 ‘Java’ ‘Shell’)

echo ${arr1[0]}

#“*”代表所有元素

echo ${arr1[*]}

echo ${arr1[6]}

5. Shell运算符

(1) .数学运算符,+、-、*、/、%

(2) .关系运算符,-eq、-ne、-gt、-lt、-ge、-le

(3) .布尔运算符,!非、-o或、-a且

(4) .字符串运算符,=、!=、-z、-n、str

(5) .文件运算符

-b file 检测文件是否为块设备文本

-c file 检测文件是否是字符设备

-d file 检测文件是否为目录

-f file 检测文件是否是普通文件

-g file 检测文件是否设置了SGID位

-k file 检测文件是否设置了Sticky Bit

-p file 检测文件是否具有管道

-u file 检测文件是否设置了SUID位

-r file 检测文件是否可读

-w file 检测文件是否可写

-x file 检测文件是否可执行

-s file 检测文件是否为空

-e file 检测文件是否存在

#!/bin/bash

n=5

m=5

echo `expr ${n} + ${m}`

echo `expr ${n} - ${m}`

echo `expr ${n} * ${m}`

echo `expr ${n} / ${m}`

echo `expr ${n} % ${m}`

# if语句

if [ $n -eq $m]

then

echo “$n == $m”

fi

if [ $n -gt $m]

then

echo “$n > $m”

fi

if [ $n -ge $m]

then

echo “$n >= $m”

fi

if [ $n -le $m]

then

echo “$n <= $m”

fi

#if else语句

if [ $n -eq $m]

then

echo “$n == $m”

else

echo “$n != $m”

fi

# for循环

for i in 1 2 3 4 5

do

echo $i

done

# while循环

item=1

while(($item<10))

do

echo ${item}

item=`expr $item + 1`

done

# until循环,执行体结束或进行测试判断条件,因此至少执行一次

until 5 -eq 6

do

echo “5656” 

done

# case语句

echo “请输入1-10之间的数字”

read comm

case $comm in

1|2|3|4|5)

echo “你输入的数字${comm}在1~5之间”;

6|7|8|9|10)

echo “你输入的数字${comm}在6~10之间”;

esac

原创粉丝点击