shell编程

xiaoxiao2025-02-14  6

Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本,常见的脚本解释器有: bash:是Linux标准默认的shell。bash由Brian Fox和Chet Ramey共同完成,是BourneAgain Shell的缩写,内部命令一共有40个。 sh: 由Steve Bourne开发,是Bourne Shell的缩写,sh 是Unix 标准默认的shell。 另外还有:ash、 csh、 ksh等。

第一个shell脚本程序: #!/bin/bash #上面中的 #! 是一种约定标记, 它可以告诉系统这个脚本需要什么样的解释器来执行;

echo "Hello, world!"

定义变量:

country="China" Number=100

注意: 1,变量名和等号之间不能有空格; 2,首个字符必须为字母(a-z,A-Z)。 3, 中间不能有空格,可以使用下划线(_)。 4, 不能使用标点符号。 5, 不能使用bash里的关键字(可用help命令查看保留关键字)。

使用变量: 只需要在一个定义过的变量前面加上美元符号 $ 就可以了, 另外,对于变量的{} 是可以选择的, 它的目的为帮助解释器识别变量的边界.

算数运算符:

原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr. 下面使用expr进行; expr是一款表达式计算工具,使用它可以完成表达式的求值操作;

a=10 b=20 expr $a + $b expr $a - $b expr $a \* $b expr $a / $b expr $a % $b a=$b

注意: 1. 在expr中的乖号为:* 2. 在 expr中的 表达式与运算符之间要有空格,否则错误; 3. 在[ $a == $b ]与[ $a != $b ]中,要需要在方括号与变量以及变量与运算符之间也需要有括号, 否则为错误的。(亲测过)

关系运算符: 只支持数字,不支持字符串,除非字符串的值是数字。

单引号的限制:

单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的; 单引号字串中不能出现单引号(对单引号使用转义符后也不行)。 双引号的优点:

双引号里可以有变量 双引号里可以出现转义字符 拼接字符串:

country="China" echo "hello, $country" #也可以 echo "hello, "$country" "

bash支持一维数组, 不支持多维数组, 它的下标从0开始编号. 用下标[n] 获取数组元素;

定义数组:

在shell中用括号表示数组,元素用空格分开。 如:

array_name=(value0 value1 value2 value3) array_name[0]=value0 array_name[1]=value1 array_name[2]=value2

if 语句 包括:1, if [ 表达式 ] then 语句 fi 2. if [ 表达式 ] then 语句 else 语句 fi 3. if [ 表达式] then 语句 elif[ 表达式 ] then 语句 elif[ 表达式 ] then 语句 …… fi

a=10 b=20 if [ $a == $b ] then echo "a is equal to b" else echo "a is not equal to b" fi

for 循环 一般格式为:

for 变量 in 列表 do command1 command2 ... commandN done

while循环

一般格式为:

COUNTER=0 while [ $COUNTER -lt 5 ] do COUNTER='expr $COUNTER+1' echo $COUNTER done

crtl+a回到当前命令行行首 crtl+e回到行尾 ctrl+w浏览器和 securecrt关闭

变量 含义 $0 当前脚本的文件名 $n 传递给脚本或函数的参数。n 是一个数字,表示第几个参数。例如,第一个参数是$1, 第二个参数是$2。 $# 传递给脚本或函数的参数个数。 $* 传递给脚本或函数的所有参数。 $@ 传递给脚本或函数的所有参数。被双引号(" ")包含时,与 $* 稍有不同,下面将会讲到。 $? 上个命令的退出状态,或函数的返回值。 $$ 当前Shell进程ID。对于 Shell 脚本,就是这些脚本所在的进程ID。

f11最大化命令行窗口 ctrl+shift+t 是命令行切换窗口 alt+1 选择第一个窗口 alt+2 是选择第二个窗口 依次类似 ctrl+alt+t是快速打开窗口

ctrl+v列选择

自动机 状态转换 + 编译 +软件工程

Ubuntu 上面的htop比top命令好用,推荐下apt-get install htop!

转载请注明原文地址: https://www.6miu.com/read-5024727.html

最新回复(0)