第十章学习笔记

本章介绍了sh脚本和其与C语言的区别,如何编写sh脚本(变量、语句、命令、常规系统命令和命令替换),解释了sh控制语句和他们的使用方法,说明了如何编写sh函数以及使用参数调用函数。

命令行参数

$# 命令行参数11n的数噩

$* 所有命令行参数,包括$0

$S 执行sh的进程PID

$? 最后一个命令执行的退出状态(如果成功,则为0,否则为非0)

内置变量:

PATH

HOME

TERM

....

用户自定义变量:

可以使用任何符号作为变量

 

sh命令内置命令.file: 读取并执行文件。

break [n]: 从最近的第n个嵌套循环中退出。

cd [ dirname] : 更换目录。

continue [n]: 重启最近的第n个嵌套循环。

eval [arg ...]: 计算一次参数并让 sh 执行生成的命令。

exec [arg ... ]: 通过这个 sh 执行命令, sh 将会退出。

exit[n]: 使 sh 退出,退出状态为 n

export [var ... ]: 将变量导出到随后执行的命令。

read [ var ... ] : stdin 中读取一行并为变议赋值。

set [arg ...] :在执行环境中设置变量。

shift: 将位甡参数 223 .• 重命名为 112...

trap [arg] [n]: 接收到信号 n 后执行参数。

umask [ddd]: 将掩码设置为八进制数 ddd 的。

wait [pid] : 等待进程 pid, 如果没有给出 pid, 则等待所有活动子进程。

read :sh 执行 read 命令时, 它会等待来自 stdin 的输入行。

Linux命令

echo:将参数字符串作为行回显到stdout,通常将多个空格压缩为一个(除非有引号);

expr:用于在UNIX/LINUX下求表达式变量的值,一般用于整数值,也可用于字符串;

sh支持多种控制语句,可类比C语言的语句。,包括if-else-fiforwhileuntil-docase以及continuebreak语句。if-else-fi语句和C语言中的if-else语句类似,但需要一个fi作为结束语句。forwhileuntil-do语句也十分类似,但需要有do-done关键字

10.10-10.16 这部分主要是讲解如何编写sh函数以及如何使用参数调用sh函数。

12.sh函数

sh函数的定义为:

  func()

  {  

    # function code

  }

13.sh中的通配符

*:可扩展到当前目录中的所有文件

?:查询某文件名中的字符

[]:查询文件名中一对[]中的字符

posted @ 2022-09-18 19:57  20201214罗云帆  阅读(23)  评论(0编辑  收藏  举报