如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
三、UNIX环境下的Shell编程ThefirstBashshellprogram:#!/bin/bash#ThisisthefirstBashshellprogramoftheday.#Scriptname:greetings#Writtenby:BarbaraBashfulecho"Hello$LOGNAME,it'snicetalkingtoyou."echo"Yourpresentworkingdirectoryis`pwd`."echo"Youareworkingonamachinecalled`uname-n`."echo"Hereisalistofyourfiles."ls#Listfilesinthepresentworkingdirectoryecho"Byefornow$LOGNAME.Thetimeis`date+%T`!"1.shellscript中的变量——位置参数变量——特定参数变量>>位置变量参数向一个shell脚本传递参数参数名称:$0——commandname$1——1stargument$2——2ndargument$3——......…$9$10(bash)#!/bin/bashecho"Thisisthescriptname:$0"echo"Thisisthe1st:$1"echo"Thisisthe2nd:$2"echo"Thisisthe3rd:$3"echo"Thisisthe4th:$4"echo"Thisisthe5th:$5"echo"Thisisthe6th:$6"echo"Thisisthe7th:$7"echo"Thisisthe8th:$8"$0$1$2$3$4$5$6$7——run:./paramDidyouseethefullmoon?——result:>>特定变量参数$#传递到脚本的参数个数$*以一个单字符串显示所有向脚本传递的参数(与位置变量不同,此选项参数可超过9个)"$1$2$3..."$$脚本运行的当前进程ID号$!后台运行的最后一个进程的进程ID号$@与$*相同,但是使用时加引号,并在引号中"$1""$2""$3"...返回每个参数$-显示shell使用的当前选项(与set命令功能相同)$?显示最后命令的退出状态ls-l(0表示没有错误,其他任何值表明有错误)echo$?0——改变位置参数变量的值:>>>>2.Shell脚本的基本元素或者:#!/bin/bash——脚本第一行总是以#!/bin/sh开始(通知shell使用系统上的Bourneshell解释器)——脚本的任何地方都可能有注释,加注释需要此行的第一个字符为#——输入输出命令readval5——任意命令(可以由终端键入执行的)或命令序列echo$val5——各种控制流结构printf"valueis%f\n"$val5.000000——函数调用>>>>>>shell脚本的运行:运行脚本前需要增加其执行权限chmod+xfile_name正确建立脚本路径chmod744file_name脚本从上到下解释执行脚本执行遇到出错,将中途退出Beforerunningmy_sh:>>Afterrunningmy_sh:your_name?Whyno"your_name"?3.各种控制结构if……fifor…do……donewhile…do……donecase……esacexitn(n为一数字)==>>>条件测试testcondition[condition]——测试文件状态——测试逻辑表达式——测试字符串——测试数值——测试文件类型或状态:-d目录[-dprogramme]-f正规文件echo$?-r可读-w可写-x可操作……——测试逻辑表达式:(测试逻辑表达式是否为真)[-dprogramme-a-xmyfile]echo$?-a逻辑与,操作符两边均为真,结果为真,否则为假。-o逻辑或,操作符两边一边为真,结果为真,否则为假。!逻辑否,条件为假,结果为真。——测试字符串:(是否相等或是否为空)test"str1"string_operator"str2"string_operator:["str1"string_operator"str2"]=两个字符串相等echo$new_name!=两个字符串不等(blank)-z空串test-nnew_name-n非空串echo$?1new_name=new_v