首页 > 代码库 > linux shell程序设计
linux shell程序设计
- 1、什么是shell
shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口(命令解释器)。shell接收用户输入的命令并把它送入内核去执行,起着协调用户与系统之间进行交互的作用
- 2、shell脚本的一般执行过程
shell脚本就是一个包含若干行shell或者linux命令的文件。对于一次编写,多次使用的大量命令,就可以使用文件单独保存下来,以便日后使用。
通常shell脚本时,第一行一定要指明系统需要哪种shell解释用户的shell程序,默认采用#!bin/bash
执行过程:
方法一:chmod 777 run.sh 加上可执行权限
./run.sh 然后执行
方法二:bash ./run.sh 根据shell脚本的类型(默认bash),选择shell程序
编写run.sh文件,run.sh文件将main.c文件编译链接成main文件
运行run.sh文件后,可见原来目录下多了main,main.o文件
运行main文件,可见运行结果
- 3、输入输出重定向
linux使用标准输入stdin和标准输出stdout,来表示每个命令的输入和输出,还使用一个标准错误输出stderr用于输出错误信息。也可用0、1、2表示标准输入、标准输出和标准错误信息输出
输出重定向使用“<”可以实现,输入重定向使用>表示
A、标准输入的控制
语法:命令<文件,将文件作为命令的输入
例如:
mail -s "mail lee” lee@lee.com < lee1
将文件lee1 当做信件的内容,主题名称为mail lee,送给收信人
ps:这个没尝试,感兴趣可以试一下
B、标准输出的控制
语法:命令>文件
将命令的执行结果送至指定的文件中
语法:命令>> 文件
将命令执行的结果附加到指定的文件中
- 4、shell里的特殊字符
$表示变量替换,即用其后指定的变量的值替换变量
” 由双引号括起来的字符,除了$、倒引号(`)和反斜线(\)仍保留其功能,其余字符均作为普通字符对待
‘ 单引号括起来的字符都作为普通字符出现
` 倒引号括起来的子付出被shell解释为命令行,在执行时,shell会先执行该命令行,并以它的标准输出结果取代整个倒引号部分
- 5、shell变量
变量分类:系统变量、环境变量和用户变量
系统变量在对参数判断和命令返回值判断会使用,环境变量主要在程序运行时需要设置,用户变量在编程过程中使用最多
- 6、text命令
text命令被用来判断表达式并且产生返回值
- 7、test 判断符号
变量最好用双引号,常量最好用单引号
- 8、shell的控制结构
if,case,for,while,until,break,continue,exit等等,和C语言大同小异
linux shell程序设计