vi-shell脚本-gcc-2013.docx
《vi-shell脚本-gcc-2013.docx》由会员分享,可在线阅读,更多相关《vi-shell脚本-gcc-2013.docx(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、vi-shell脚本-gcc四川交通职业技术学院-网络教研室 2013-11./没有第一部分 VI编辑器命令模式移动光标G移动到最后一行nG移动到第n行H首行行首M中间行行首L最后一行行首删除x删除字符nxdd删除行ndd复制与粘贴yw复制字nywyy复制行nyyp粘贴撤销与恢复u撤销.恢复退出ZZ保存退出末行模式退出:q:wq:q!强制退出移动光标:n显示行号:set nu文件相关:w保存:w file把当前编辑的内容写到file文件中:n1,n2w file把n1到n2行的内容写到file文件中:1,. w file 把从第1行到光标当前位置的内容写到file文件中:.,$ w file把
2、从光标当前位置到文尾的内容写到file文件中:r file打开另外一个file文件:e file新建file文件:f file把当前文件改名为file文件查找替换:1,$ s/str1/str2/g全文中的字符串str1替换为字符串str2:1,. s/str1/str2/g从第1行到光标当前位置中的字符串str1替换为字符串str2:.,$ s/str1/str2/g从光标当前位置到文尾中的字符串str1替换为字符串str2复制与移动、删除:n1,n2 co n3把n1到n2行所有内容复制到n3行之后:n1,n2 m n3把n1到n2行所有内容移动到n3行之后:d删除光标所在当前行:nd:n
3、1,n2d执行shell命令:! cmd运行shell命令cmd:r!cmd把命令cmd的运行结果写到当前行位置第二部分 编写Linux的Shell脚本一.编写一个简单的Shell脚本步骤l 使用编辑器写脚本文件内容wjlocalhost $ vi myshell1.sh#! /bin/bashecho The current directory is $PWDx=500echo x=$xl 给脚本文件赋予执行权限chmod +x myshell1.shl 运行脚本文件wjlocalhost $ ./myshell1.sh二.修改登录Shell脚本(使用普通用户帐户实验)wjlocalhost
4、 $ vi .bash_profile三. Shell变量的定义1.直接为变量赋值x=500y=$xc=namewjlocalhost /$ y=500wjlocalhost /$ echo $y500wjlocalhost /$ echo y=$yy=$500 wjlocalhost /$ echo y=$yy2.变量置换取得值mydate=dateecho $mydate3.通过命令参数传递$n代表传递的第n个参数$0执行命令的名称$#参数总数$命令行中所有参数组成的字符串$?前驱命令返回值#! /bin/bashecho list:$echo count:$#echo 第1个传递的参数是
5、:$1echo 第2个传递的参数是:$24.系统环境变量HOMEPWDOLDPWDPS1PATH 5.读用户输入#! /bin/bashecho Please input your name:read bufferecho Hello $buffer四. Shell表达式1.关系与逻辑表达式test 关系表达式关系表达式l 数值测试test num1 num2 num1 num2 -eq 判断是否相等,相等则为真 -ne 判断是否不相等,不相等则为真 -gt 判断是否大于,大于则为真 -ge 判断是否大于等于,大于等于则为真 -lt 判断是否小于,小于则为真 -le 判断是否小于等于,小于等于
6、则为真l 字符串测试= 用于比较两个字串是否相等!= 用于比较两个字串是否不相等-z 用于判断一个字符串长度是否为0-n 用于判断一个字符串长度是否不为0l 文件测试-e 若文件存在则为真-r 若文件存在且可读则为真-w 若文件存在且可写则为真-x 若文件存在且可执行则为真-s 若文件存在且至少有一个字符则为真-d 若文件存在且为目录则为真-f 若文件存在且为普通文件则为真-b -L 若文件存在且为符号链接文件则为真-O 若文件存在且为当前用户文件则为真-G 若文件存在且为当前组用户文件则为真逻辑表达式:-a “与”运算 同时满足-o “或”运算! “非”运算 对一个条件取反 $num ge
7、0 -a $num le 100 2.算术运算表达式$( )wjlocalhost $ a=123wjlocalhost $ b=456wjlocalhost $ echo $(123+456)579wjlocalhost $ echo $($a+$b)579wjlocalhost $ echo $(a+b)5793.expr命令wjlocalhost $ count=1 $count 循环wjlocalhost $ count=expr $count + 1 wjlocalhost $ echo $count2五. Shell脚本结构(一).分支结构if 表达式 then 命令语句块fiif
8、 表达式 then 命令语句块1 (真值) else 命令语句块2 (假值)fi= if分支结构 例1=#! /bin/bashecho Please input a file name:read filenameif -e $filename then echo $filename is exists else echo $filename isnt existsfi=if 表达式1 then if 表达式2 then 命令语句块 else 命令语句块fi else if 表达式3 then 命令语句块 else 命令语句块fifiif then 命令语句块 elif then 命令语句块
9、elif then 命令语句块 elif then 命令语句块.else 命令语句块fi= if多分支结构 例1=#! /bin/bashecho Please input a students score:read scoreif $score -ge 0 -a $score -le 100 then if $score -ge 90 then echo 优 elif $score -ge 80 then echo 良 elif $score -ge 70 then echo 中 elif $score -ge 60 then echo 合格 else echo 不合格 fi else ec
10、ho 你的输入不合法fi=case.esac多分支结构case 变量 in值1)命令语句块 ;值2)命令语句块;值3)命令语句块;.值n)命令语句块;*)命令语句块;esac= case.esac多分支结构 例1=#! /bin/bashecho Please input a number from 1 to 10:read number case $number in 1) echo ONE ; 2) echo TWO ; 3) echo THREE ; 4) echo FOUR ; 5) echo FIVE ; 6) echo SIX ; 7) echo SEVEN ; 8) echo E
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- vi shell 脚本 gcc 2013
限制150内