2024年5月20日发(作者:坚昆卉)
第12章 Shell脚本编程
Shell命令行的运行
编写、修改权限和执行Shell程序的步骤
在Shell程序中使用参数和变量
表达式比较、循环结构语句和条件结构语句
在Shell程序中使用函数和调用其他Shell程序
12-1 Shell命令行书写规则
Shell命令行的书写规则
对Shell命令行基本功能的理解有助于编写更好的Shell程序,在执行Shell命令时多个命
令可以在一个命令行上运行,但此时要使用分号(;)分隔命令,例如:
[root@localhost root]# ls a* -l;free;df
长Shell命令行可以使用反斜线字符()在命令行上扩充,例如:
[root@localhost root]# echo “this is
>long command”
This is long command
注意:
“>”符号是自动产生的,而不是输入的。
12-2 编写/修改权限及执行Shell程序的步骤
编写Shell程序
执行Shell程序
Shell程序有很多类似C语言和其他程序设计语言的特征,但是又没有程序语言那样复杂。
Shell程序是指放在一个文件中的一系列Linux命令和实用程序。在执行的时候,通过Linux操
作系统一个接一个地解释和执行每条命令。首先,来编写第一个Shell程序,从中学习Shell
程序的编写、修改权限、执行过程。
12-2-1 编辑Shell程序
编辑一个内容如下的源程序,保存文件名为date,可将其存放在目录/bin下。
[root@localhost bin]#vi date
#! /bin/sh
echo “Mr.$USER,Today is:”
echo &date “+%B%d%A”
echo “Wish you a lucky day !”
注意:
#! /bin/sh通知采用Bash解释。如果在echo语句中执行Shell命令date,则需要在date
命令前加符号“&”,其中%B%d%A为输入格式控制符
。
12-2-2 建立可执行程序
编辑完该文件之后不能立即执行该文件,需给文件设置可执行程序权限。使用如下命令。
[root@localhost bin]#chmod +x date
12-2-3 执行Shell程序
执行Shell程序有下面三种方法:
方法一:
[root@localhost bin]#./ date
,Today is:
二月 06 星期二
Wish you a lucky day !
方法二:
另一种执行date的方法就是把它作为一个参数传递给Shell命令:
[root@localhost bin]# Bash date
,Today is:
二月 06 星期二
Wish you a lucky day !
方法三:
为了在任何目录都可以编译和执行Shell所编写的程序,即把/bin的这个目录添加到整个
环境变量中。
具体操作如下:
[root@localhost root]#export PATH=/bin:$PATH
[root@localhost bin]# date
,Today is:
二月 06 星期二
Wish you a lucky day !
2024年5月20日发(作者:坚昆卉)
第12章 Shell脚本编程
Shell命令行的运行
编写、修改权限和执行Shell程序的步骤
在Shell程序中使用参数和变量
表达式比较、循环结构语句和条件结构语句
在Shell程序中使用函数和调用其他Shell程序
12-1 Shell命令行书写规则
Shell命令行的书写规则
对Shell命令行基本功能的理解有助于编写更好的Shell程序,在执行Shell命令时多个命
令可以在一个命令行上运行,但此时要使用分号(;)分隔命令,例如:
[root@localhost root]# ls a* -l;free;df
长Shell命令行可以使用反斜线字符()在命令行上扩充,例如:
[root@localhost root]# echo “this is
>long command”
This is long command
注意:
“>”符号是自动产生的,而不是输入的。
12-2 编写/修改权限及执行Shell程序的步骤
编写Shell程序
执行Shell程序
Shell程序有很多类似C语言和其他程序设计语言的特征,但是又没有程序语言那样复杂。
Shell程序是指放在一个文件中的一系列Linux命令和实用程序。在执行的时候,通过Linux操
作系统一个接一个地解释和执行每条命令。首先,来编写第一个Shell程序,从中学习Shell
程序的编写、修改权限、执行过程。
12-2-1 编辑Shell程序
编辑一个内容如下的源程序,保存文件名为date,可将其存放在目录/bin下。
[root@localhost bin]#vi date
#! /bin/sh
echo “Mr.$USER,Today is:”
echo &date “+%B%d%A”
echo “Wish you a lucky day !”
注意:
#! /bin/sh通知采用Bash解释。如果在echo语句中执行Shell命令date,则需要在date
命令前加符号“&”,其中%B%d%A为输入格式控制符
。
12-2-2 建立可执行程序
编辑完该文件之后不能立即执行该文件,需给文件设置可执行程序权限。使用如下命令。
[root@localhost bin]#chmod +x date
12-2-3 执行Shell程序
执行Shell程序有下面三种方法:
方法一:
[root@localhost bin]#./ date
,Today is:
二月 06 星期二
Wish you a lucky day !
方法二:
另一种执行date的方法就是把它作为一个参数传递给Shell命令:
[root@localhost bin]# Bash date
,Today is:
二月 06 星期二
Wish you a lucky day !
方法三:
为了在任何目录都可以编译和执行Shell所编写的程序,即把/bin的这个目录添加到整个
环境变量中。
具体操作如下:
[root@localhost root]#export PATH=/bin:$PATH
[root@localhost bin]# date
,Today is:
二月 06 星期二
Wish you a lucky day !