欢迎来到天天文库
浏览记录
ID:39984604
大小:85.00 KB
页数:35页
时间:2019-07-16
《[理学]linux shell编程》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、LinuxSHELL编程SHELL基础一.什么是SHELLShell是一种具备特殊功能的程序,它是介于使用者和UNIX/Linux操作系统之核心程序(kernel)间的一个接口。众所周知,对计算机下命令得透过命令(command)或是程序(program);程序有编译器(compiler)将程序转为二进制代码,可是命令呢?其实shell也是一支程序,它由输入设备读取命令,再将其转为计算机可以了解的机械码,然后执行它。各种操作系统都有它自己的shell,以DOS为例,它的shell就是command.
2、com。UNIX/Linux将shell独立于核心程序之外,使得它就如同一般的应用程序,可以在不影响操作系统本身的情况下进行修改、更新版本或是添加新的功能。二.Shell的功用为了确保任何提示符号下输入的命令都能够适当地执行。shell担任的工作包括有:1.读取输入和语法分析命令列2.对特殊字符求值3.设立管线、转向、和幕后处理4.处理讯号5.设立程序来执行SHELL基础Bashshell编程Linux下的SHELL编程文件必须存在/BIN目录下因为文件初始没有赋予执行权限,我们要想运行该文件,必须
3、赋予文件执行权限操作命令:CHMOD+X文件名一、环境变量环境变量以ASCII字符串在座,环境变量不仅由SHELL脚本用,还可以由编译过后标准程序使用。当在BACH中导出环境变量时,以后运行的程序都可以读取。Bash中定义环境变量的标准方法是:变量名=变量值例如:MYVAR=‘LX’定义了一个名为MYVAR的环境变量(变量一般用大写)注意等号=的两边不能有空格,定义一个字时引号可以省略,如果定义的字符串中有空格则必须使用引号,单引号或双引号都可以在读取变量时前面要加$例如:ECHO$MYVAR:输出
4、LX二.常用命令1、ECHO功能:将结果输出到屏幕,如果加了改向操作可以输出到文件或变量语法:echo[-ne][字符串]或echo[--help][--version]补充说明:echo会将输入的字符串送往标准输出。输出的字符串间以空白字符隔开,并在最后加上换行号。参数:-n不要在最后自动换行-e若字符串中出现以下字符,则特别加以处理,而不会将它当成一般文字输出:a发出警告声;b删除前一个字符;c最后不加上换行符号;f换行但光标仍旧停留在原来的位置;换行且光标移至行首;r光标移至行首
5、,但不换行;t插入tab;v与f相同;\插入字符;nn插入nnn(八进制)所代表的ASCII字符;--help显示帮助--version显示版本信息2、date命令date能用来显示或设定系统的日期和时间,在显示方面,使用者能设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下:时间方面::打印出%%n:下一行%t:跳格%H:小时(00..23)%I:小时(01..12)k:小时(0..23)%l:小时(1..12)%M:分钟(00..59)%p:显示本地AM或P
6、M%r:直接显示时间(12小时制,格式为hh:mm:ss[AP]M)%s:从1970年1月1日00:00:00UTC到目前为止的秒数%S:秒(00..61)T:直接显示时间(24小时制)%X:相当于%H:%M:%S%Z:显示时区日期方面:%a:星期几(Sun..Sat)%A:星期几(Sunday..Saturday)%b:月份(Jan..Dec)%B:月份(January..December)%c:直接显示日期与时间%d:日(01..31)%D:直接显示日期(mm/dd/yy)%h:同%b%j:一年
7、中的第几天(001..366)%m:月份(01..12)%U:一年中的第几周(00..53)(以Sunday为一周的第一天的情形)%w:一周中的第几天(0..6)%W:一年中的第几周(00..53)(以Monday为一周的第一天的情形)%x:直接显示日期(mm/dd/yy)%y:年份的最后两位数字(00.99)%Y:完整年份(0000..9999)若是不以加号作为开头,则表示要设定时间,而时间格式为MMDDhhmm[[CC]YY][.ss],其中MM为月份,DD为日,hh为小时,mm为分钟,CC为年
8、份前两位数字,YY为年份后两位数字,ss为秒数3.read命令接收键盘字符串到变量,回车结束。例如:设文件lx内容如下Echo“pleaseinputyouname”ReadNAMEEcho“Today:$(date+$D)”Echo“name:$name”三、运算符1、文件判断条件条件[-efilename]:表示存在为真条件[-dfilename]:表示目录为真条件[-ffilename]:表示是文件为真条件[-rfilename]:表示可读为真条件[-wfile
此文档下载收益归作者所有