Linux bash shell脚本语法入门.doc
上传人:qw****27 上传时间:2024-09-12 格式:DOC 页数:4 大小:37KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

Linux bash shell脚本语法入门.doc

Linuxbashshell脚本语法入门.doc

预览

在线预览结束,喜欢就下载吧,查找使用更方便

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

1.基础#!/bin/bash//bash脚本第一句都是这个,他会让系统指定以bash来解释这个脚本#//shell脚本注释符号2.变量和使用HOME="/home"//注意赋值不要有空格a=123HOME_LIST=$(ls/home)//把命令的执行结果赋值给变量ehco$HOME//$符号是获得变量HOME的值a=a+1系统变量:$0这个程序的执行名字$n这个程序的第n个参数值,n=1...9$*这个程序的所有参数$#这个程序的参数个数$$这个程序的PID$!执行上一个背景指令的PID$?上一个指令的返回值3.if语句if["22"-lt"33"]then//注意空格echo"22lessthan33"elseecho"no"fi//if语句的结束4.case语句echo"enteranumber"readans//读取一个变量readcase$ansin1)echo"younumeris$ans";;//注意符号是两个;2)echo"younumberis2";;[3-9])echo"younumberis$ans";;*)//*通配符echo"others"esac5.比较运算符运算符描述示例文件比较运算符-efilename如果filename存在,则为真[-e/var/log/syslog]-dfilename如果filename为目录,则为真[-d/tmp/mydir]-ffilename如果filename为常规文件,则为真[-f/usr/bin/grep]-Lfilename如果filename为符号链接,则为真[-L/usr/bin/grep]-rfilename如果filename可读,则为真[-r/var/log/syslog]-wfilename如果filename可写,则为真[-w/var/mytmp.txt]-xfilename如果filename可执行,则为真[-L/usr/bin/grep]filename1-ntfilename2如果filename1比filename2新,则为真[/tmp/install/etc/services-nt/etc/services]filename1-otfilename2如果filename1比filename2旧,则为真[/boot/bzImage-otarch/i386/boot/bzImage]字符串比较运算符(请注意引号的使用,这是防止空格扰乱代码的好方法)-zstring如果string长度为零,则为真[-z"$myvar"]-nstring如果string长度非零,则为真[-n"$myvar"]string1=string2如果string1与string2相同,则为真["$myvar"="onetwothree"]string1!=string2如果string1与string2不同,则为真["$myvar"!="onetwothree"]算术比较运算符num1-eqnum2等于[3-eq$mynum]num1-nenum2不等于[3-ne$mynum]num1-ltnum2小于[3-lt$mynum]num1-lenum2小于或等于[3-le$mynum]num1-gtnum2大于[3-gt$mynum]num1-genum2大于或等于[3-ge$mynum]6.bash中几种循环6.1.forname[inword];dolist;done6.2.for((expr1;expr2;expr3));dolist;done//注意有2层括号6.3while[expr]dolist;done其中list简单说就是一串由操作符(operator;、&、&&、||)分各给出一个简单例子:1.forfilenamein$(ls)docat$filenamedone2.for((i=0;i<10;i++))doecho$idone3.x=1sum=0while[$x-le10]//注意[]两边的空格doletsum=sum+$x//shell中算术计算使用letletx=x+1doneecho$sum