2016/11/19
文章作为自己看书的总结
一. shell 脚本编程的基础、变量
1.为了实现某个任务,将多组命令组合后,写入一个可执行的文本文件的方法,称为shell编程。按照shell环境的不同
可以将shell脚本分类,最常见应用于bash和Tcsh脚本,称为bash脚本和Tcsh脚本。bash脚本最为常见。
2.脚本注释
1)详细说明脚本文件的功能
2)脚本文件建立的时间和修改脚本文件的时间
3)重要语句块、复杂结构作用
4)脚本文件的作者、修改脚本的作者。
注意:脚本加注释除非将“#”号放在引用符号内,否则符号“#”到行尾的所有内容都是注释内容。添加注释必须是在
行首添加“#”。
3.脚本的内容
1)脚本的内容是实现一组命令的集合,由一个命令或多个命令组成。
2)脚本内容划分为定义部分和主体部分
定义部分主要是用于脚本捕获系统信号、使用的命令、函数和文件等;
主体部分的语句是主要调用定义部分的变量、函数、以实现脚本的功能。
4.脚本的运行方式
1)运行方式有三种,使用bash命令、使用点号(这种执行脚步的方式通常是调用系统脚本文件)和设置脚本的执行权限。
2)设置脚本执行权限的方式
chmod u+x hello.sh
ls -l hello.sh
./hello.sh
5.接收用户输入
test:
vim example.sh
echo -n "Input your name:"
read NAME
echo "hello,"$NAME"."
分心echo先输出提示信息,然后read命令将用户的输入保存在变量NAME中。最后使用echo标准输出。
6.脚本传递参数
脚本参数输入
echo "this first parameter:"$1
echo "this second parameter:"$2
echon "this third parameter:"$3
二.Tcsh 脚本编程
(1)Tcsh和Bash脚本的区别
1)在tcsh中为变量赋值,需要使用set命令,例如set NAME="Jhon";
2)Tcsh中数组的下标是从1开始的,而Bash中则是从0开始的。
3)bash获取环境变量使用export,而tcsh使用setenv
4)获取脚本参数的时候bash一般使用的是$1,$2,$3等位置的变量,Tcsh则使用$argv[1],$argv[2]、$argv[3]等读取。
5)在bash中获取信号的命令是trap,而tcsh中是onintr。
三.shell中的变量
1) 脚本编程的时候必然会用到shell中的变量,可以将变量理解为一个“容器”,需要“容器”的时候直接使用容器即可。
shell中的变量没有数据类型的区别,以字符串的形式的保存。
2)使用类型分类
环境变量:用于保存操作系统运行时使用的环境参数
位置变量:Bash将传递给脚本的参数保存在位置变量中,以便脚本引用这些参数
预定义变量:优系统保留和维护的一组特殊的变量,这些变量用于保存程序的运行状态
自定义变量:用户自定义的变量,可用于用户编写脚本、多个命令间的值传递等。
文章作为自己看书的总结
一. shell 脚本编程的基础、变量
1.为了实现某个任务,将多组命令组合后,写入一个可执行的文本文件的方法,称为shell编程。按照shell环境的不同
可以将shell脚本分类,最常见应用于bash和Tcsh脚本,称为bash脚本和Tcsh脚本。bash脚本最为常见。
2.脚本注释
1)详细说明脚本文件的功能
2)脚本文件建立的时间和修改脚本文件的时间
3)重要语句块、复杂结构作用
4)脚本文件的作者、修改脚本的作者。
注意:脚本加注释除非将“#”号放在引用符号内,否则符号“#”到行尾的所有内容都是注释内容。添加注释必须是在
行首添加“#”。
3.脚本的内容
1)脚本的内容是实现一组命令的集合,由一个命令或多个命令组成。
2)脚本内容划分为定义部分和主体部分
定义部分主要是用于脚本捕获系统信号、使用的命令、函数和文件等;
主体部分的语句是主要调用定义部分的变量、函数、以实现脚本的功能。
4.脚本的运行方式
1)运行方式有三种,使用bash命令、使用点号(这种执行脚步的方式通常是调用系统脚本文件)和设置脚本的执行权限。
2)设置脚本执行权限的方式
chmod u+x hello.sh
ls -l hello.sh
./hello.sh
5.接收用户输入
test:
vim example.sh
echo -n "Input your name:"
read NAME
echo "hello,"$NAME"."
分心echo先输出提示信息,然后read命令将用户的输入保存在变量NAME中。最后使用echo标准输出。
6.脚本传递参数
脚本参数输入
echo "this first parameter:"$1
echo "this second parameter:"$2
echon "this third parameter:"$3
二.Tcsh 脚本编程
(1)Tcsh和Bash脚本的区别
1)在tcsh中为变量赋值,需要使用set命令,例如set NAME="Jhon";
2)Tcsh中数组的下标是从1开始的,而Bash中则是从0开始的。
3)bash获取环境变量使用export,而tcsh使用setenv
4)获取脚本参数的时候bash一般使用的是$1,$2,$3等位置的变量,Tcsh则使用$argv[1],$argv[2]、$argv[3]等读取。
5)在bash中获取信号的命令是trap,而tcsh中是onintr。
三.shell中的变量
1) 脚本编程的时候必然会用到shell中的变量,可以将变量理解为一个“容器”,需要“容器”的时候直接使用容器即可。
shell中的变量没有数据类型的区别,以字符串的形式的保存。
2)使用类型分类
环境变量:用于保存操作系统运行时使用的环境参数
位置变量:Bash将传递给脚本的参数保存在位置变量中,以便脚本引用这些参数
预定义变量:优系统保留和维护的一组特殊的变量,这些变量用于保存程序的运行状态
自定义变量:用户自定义的变量,可用于用户编写脚本、多个命令间的值传递等。