




已阅读5页,还剩75页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
,collegefinformationscientificandengineering,shandonggagriculturaluniversity,shell script programming,1,2,shell script可以提高用户操作和管理员系统管理的效率,general steps editor script program shell作为解释器。以非交互方式执行脚本,有两种方式:使用sh命令执行脚本文件,向脚本文件添加执行权限,以及使用。/command,3,HELLOWORLD!按I进入插入模式并输入回声“helloworld!”:进入wq保存并退出shhello.sh或chmod 755 hello . sh/hello . sh,4,I,VI编辑器,VI的三种工作模式,VI的启动,VI的退出,VI的文本编辑,VI的命令模式,VI的命令行命令模式,以及5,系统配置文件,shell脚本文件等。都是文本文件,编辑它们都需要一个文本编辑器。在Linux系统中有各种各样的文本编辑器,包括字符界面,如VI和EMACAS,以及图形界面,如“附件”菜单下的“gedit”。用户可以根据自己的喜好选择使用它们。如何学习VI:VI中的命令太多,很难记住。事实上,经常使用的命令并不多。只要你掌握了几个关键点并正确地练习,你就能很快地使用虚拟仪器。为什么选择虚拟仪器在易用性和图形编辑方面有比虚拟仪器更好的编辑器为什么使用虚拟仪器?历史悠久,功能强大,在某些情况下,系统中只能找到虚拟仪器。一旦用户熟悉了它,使用起来就非常方便。系统管理员可以通过使用正则表达式大大提高工作效率,而学习vi也是掌握正则表达式的有效途径。由于vi的不同版本,在命令格式、功能和使用上会有一些不同。Shell执行vi命令,而RedHat系统实际上执行vim,这是传统VI的增强版本,有三种工作模式:7、1和VI。默认情况下,命令模式启动vi并进入命令模式。此时,界面不可编辑,只能接受命令(键入的命令看不到)、文件保存、退出、文本删除、复制、搜索等操作输入模式。在编辑模式下,i(sert)、a(ppend)、o、s等可用于进入该模式。按esc键返回命令模式。行编辑模式实际上是命令模式之一。在命令模式下,输入一个冒号进入命令行,并以可显示的方式输入命令(因此有些书认为这是两种工作模式)。这三种模式可以自由切换。通常,切换命令是要操作的英语单词的第一个字母。8,2。vi的开始。如果文件存在,VI显示文件内容并等待用户的命令。如果指定的文件不存在,vi将通知用户它是一个未命名的文件,并进入一个空白界面。启动vi时,默认情况下处于命令模式。用户必须通过使用命令进行输入编辑来切换到文本输入模式,或者可以执行编辑命令,如删除和复制。VIrfile _ name,以只读方式打开文件,9,3,退出VI,命令行模式中的冒号:q!不存档强制退出。w保存,但不退出。在w(rite)之后,添加要存档的文档的名称。存档:wq后退出。在命令模式下按zz,其功能与:wq相同。x与命令模式下的:wq相同:ZZ,ZQ保存/不保存退出,10,4。如何编辑,您必须从命令模式切换到插入模式进行输入编辑。可用的命令有:append)a:从光标后面添加数据位置a:从光标后面添加数据。插入)I:从光标前面插入数据I:从光标所在行的第一个非空白字符前面插入数据。Open)o:在光标所在的行下添加一列,并进入输入模式。在光标行上方添加一列,进入输入模式。,冒号进入行命令模式,输入setnu设置vi显示行号,11,5,在命令模式下操作:删除和修改,X:删除光标所在的字符dw,删除单词dd:删除光标所在的行S,删除光标所在的字节,进入输入模式,#表示数字#x删除几个字符,如3x#dw删除几个单词,如3dw删除三个单词#dd删除多行, 如3d删除光标所在的行和接下来的两行d$删除光标所在行的内容,D光标键:左向右:删除光标所在的字符; 顶部:删除当前行和前一行;下一步:删除当前行和下一行,向上和向下光标键:删除当前行上下的几行文本(包括当前行),u:恢复刚刚修改的文本u:恢复光标所在行的所有修改。重复前面命令的操作,12。命令模式下的操作:复制,粘贴,复制命令:yyyy:复制整行yyy:复制光标所在的单词nyw:复制光标所在的n个单词nyy:复制n行粘贴命令,包括当前行p光标移动h,j,k,lnG:移动到n行标题的底部,13,6,行命令模式下的操作:字符串搜索,替换,/字符串搜索指定的字符串。按n键:如果斜线(/)继续搜索:按n键从当前位置向后搜索;如果你写一个问号(?),按下N键从当前位置向前看,并替换:%s/SEARCH/REPLACE以替换文档中的所有搜索;数字: # s/SEARCH/replace/g #表示数字,表示行数到行数,并用replace替换SEARCH;s/SEARCH/REPLACE/g用REPLACE替换当前光标行中的搜索词,并突出显示所有搜索。14,7。集合vi。全局配置文件位于/etc/vim/vimrc(或/etc/vimrc)中,或者它可以有自己独立的配置文件和配置文件位“/。vimrc ,如果没有这样的文件,您也可以使用以下命令直接创建和编辑它:setnu 显示行号设置标尺显示光标位置设置撤销级别显示光标位置设置智能缩进 智能缩进语法突出显示,15,三种模式之间的转换关系,16,案例练习,1。请在/tmp目录下建立一个名为vitest的目录;2.输入邀请目录;3.复制/etc/man.config到此目录的底部4。使用vi打开此目录中的man.config文件;5.在vi中设置行号;6.移到第58行,向右移动40个字符。你在双引号中看到什么目录?7.移到第一行,搜索字符串“bzip2”。他在哪条线上?8.接下来,我将把50到100行之间的man改为MAN,并逐个选择是否需要修改以及如何发出指令。9.复习后,我突然食言了。完全恢复的方法有哪些?10.我想把10行的内容从51行复制到60行,然后粘贴到最后一行。11.删除11到30行之间的20行;12.将此文件另存为man.test.config文件;13.转到第29行,删除15个字符;14.存放后离开,17,1 . mkdir/tmp/vitest 2 . CD/tmp/vitest 3 . CP/etc/man . config . 4 . viman . config 5. setnu 6 .按58G,然后按40您将看到用双引号括起来的单词/dir/bin/foo;7.先执行1G或gg后,直接输入/bzip28。直接执行:50,100s/man/MAN/gc至9。(1)一个简单的方法总是可以按下U键返回到原始状态,(2)让:q不存储!之后,再次阅读文件。10.51G,然后10yy,然后按g到最后一行,然后p粘贴10行和11.11G,然后给他20dd删除20行。在12.wman.test.config13.29G之后,给他15倍的时间删除15个字符。14.wq!18,2,Shell变量和语法,shell概述shell变量和符号shell控制过程语法shell输出重定向脚本实例,19,1,SHELL基本元素(1)#!/bin/bash必须指示Shell (2)# comment (3)变量(4)控件的类型,1。shell概述,一个shell脚本viclearup.sh#!/bin/bash # this clearcd/var/log cat/dev/null/var/log/messages/dev/null Linux的无限垃圾收集bin echo Logscleanedup。20,2,一般步骤:(1)编辑文件(2)保存文件(3)授予文件可执行权限(4)运行和调试,21,注意:sh通常是文件后缀。不,它也可以实现。两种常见的执行方法。/file name指定要在当前目录中执行的路径,并要求文件必须具有执行权限,如chmod755run.sh,/run.shsh文件名shrun.sh文件名指定一个或多个解释脚本程序的shell,如#!如果指定了/bin/bash,请注意不要从/bin中省略“/”,否则如果在。/模式。如果未指定,默认情况下将使用/bin/sh、22、3执行外壳脚本。shell shell类型函数主程序通用模板abc.sh#的一般结构!/bin/bash shell type # as impleshellscript示例# actionfundationsayhello()函数 Echo enter yourname : read name从键盘输入读取变量Echo hello $ name Echo programmestartshere . 主要程序说hello echo programmerends .23,1,注释#除#!In /bin/bash,# special 2,美元符号$可变符号。与反斜杠转义字符相反,下面的普通字符用作变量名,例如$a代表变量a的值。当变量字符的长度超过1时,使用将其括起来。3.单引号引起的字符都是普通字符,即echo my $ Shell ,2。外壳、24、4中的特殊符号。双引号中的内容,除了保留特殊功能的$,转义符,倒引号外,其他字符都是普通字符。5.反引号中的字符串(数字1键旁边的键)被解释并执行为一个shell命令行,结果将替换反引号中包含的整个部分。“pwd是pwd命令执行的结果$LOGNAME系统变量,25,练习:区分以下单词,echo my home is $ home echo my home is $ home echo my home is $ home echo my home is $ home echo my home is pwd echo my home is pwd , 用于括起shell命令用于按原样显示,26,6。反斜杠反斜杠是一种转义字符,可以将特殊字符转换为普通字符。在字符前使用反斜杠()可防止外壳将以下字符解释为特殊字符。示例4:Yu Kun Yu Kun $ echo filename is 0 $ * filename is 0 $ *注意:在单引号字符串中,反斜杠也变成普通字符,并失去转义字符功能。27,3,变量,外壳变量可以保存,如路径名,文件名或一些局部变量。局部变量仅在创建它们的外壳中使用,并且可以在任何外壳程序中使用和修改。环境变量可以用在创建它们的外壳中,以及从它们派生的任何子程序中。有些变量是用户创建的,有些是特殊的(如路径、主页)。它是系统环境的一部分。你不必定义它们。您可以在shell程序中使用它们。它也可以在外壳中修改。内部变量由系统提供。与环境变量不同,用户不能修改它们。局部变量(局部变量、用户变量)和局部变量使用变量名=用户当前shell生命周期脚本中的值注:(1)等号两边不能有空格(2)值必须用双引号括起来(3)Shell变量可以是大写和小写字母,区分大小写,(30), 变量的声明和使用(1)变量为弱类型(无声明类型)(2)变量声明和赋值格式变量=值(等号两边不能有空格)(3)变量引用$变量名$ 变量名当变量名为1个字符时,建议使用方法1,当有多个字符时,建议使用方法2,例如:$a$abc、31,并且显示变量echo命令可以显示单个变量的值。 Add $,echo $ name echo $ name echo $ name ereecho $ name在变量名之前,最好在输出引用变量时添加,32,清除变量未设置的变量名例如:echo $ name 未设置的变量名(注意:没有$)显示所有局部变量集,33,设置只读变量,设置变量,不想改变其值,可以将其设置为只读变量变量名=值只读变量名,34,2,环境变量,环境变量用于所有用户进程登录过程称为父过程。环境变量可以通过pstree查看,并且可以用于所有子程序,包括编辑器、脚本和应用程序示例。/bin/bash#测试环境变量echo 主目录是$HOME 。可以在命令行中设置环境变量,但是当用户注销时,这些值将会丢失。环境变量全部大写,必须使用导出命令导出,35,设置环境变量-name=value导出变量-name(环境变量名称大写)显示环境变量env。您可以看到所有的环境变量echo$ environment变量名(显示一个变量)清除环境变量unset environment变量名,36,HOME:表示用户的主目录。Cd转到用户的主目录或使用光盘直接返回用户的主目录。PS1:壳牌公司的主要提示壳牌公司:目前在这种环境下使用的是什么程序?如果是bash,默认为/bin/bashPWD:用户当前工作目录的路径。它指示用户当前在Linux文件系统中的位置。它是由Linux自动设置的HISTSIZE:这与“历史命令”有关。系统可以记录已发出的命令,记录的“数字”由该值设置。环境:该用户使用的个性化环境设置文件的读取文件。邮件:当我们使用命令MAIL接收邮件时,系统会读取邮箱文件。路径:这是执行文档搜索的路径
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 易地搬迁拆迁协议书
- 活体代卖合同协议书
- 手术远程合作协议书
- 摊位转让合并协议书
- 杨梅基地出租协议书
- 法院和解还款协议书
- 执行代偿回款协议书
- 注资入股电站协议书
- 欠款资产转让协议书
- 托管合同免责协议书
- 康复医疗复习题及参考答案
- 破产法试题及答案
- 高血压科普基础知识培训-2025世界高血压日
- 宪法卫士2023第八届全国学生学宪法讲宪法知识竞赛题库附答案(300题)
- 静脉输液不良反应及处理 课件
- 河南省开封市等2地2025届高三第三次质量检测英语+答案
- 北师大版2025三年级语文下学期期中课堂知识检测考试
- 2024年甘肃兰州事业单位招聘考试真题答案解析
- 宁波浙大宁波理工学院招聘13名事业编制工作人员笔试历年参考题库附带答案详解
- 延安精神知识讲座课件
- 企业宣传岗试题及答案
评论
0/150
提交评论