shell和vi编辑器

上传人:第*** 文档编号:54331576 上传时间:2018-09-11 格式:PPT 页数:40 大小:3.90MB
返回 下载 相关 举报
shell和vi编辑器_第1页
第1页 / 共40页
shell和vi编辑器_第2页
第2页 / 共40页
shell和vi编辑器_第3页
第3页 / 共40页
shell和vi编辑器_第4页
第4页 / 共40页
shell和vi编辑器_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《shell和vi编辑器》由会员分享,可在线阅读,更多相关《shell和vi编辑器(40页珍藏版)》请在金锄头文库上搜索。

1、SHELL和vi编辑器,本章内容,什么是Shell Shell的主要版本 Shell中的命令规则,路径和文件 Shell中的命令补齐、别名功能和保留字 Shell中的重定向和管道 Shell Script简介,Linux shell简介,什么是Shell,shell是linux的一个外壳,它包在linux内核的外面,为用户和内核之间的交互提供了一个接口。当用户下达指令给操作系统的时候,实际上是把指令告诉shell,经过shell解释,处理后让内核作出相应的动作。而系统的回应和输出的信息也由shell处理,然后显示在用户的屏幕上.,1.内建命令:包含在shell自身当中的,在编写shell的时候

2、就已经包含在内了。比如cd,exit。查看内建命令的方法可以使用help命令。 2.外部命令:是存放于文件系统某个目录下的具体的可执行程序,比如cp就是在/bin目录下的一个可执行文件,外部命令也可以是某些商业或自由软件,如netscape.,Shell中的二种命令,环境变量:对环境的设置可以通过给各种环境变量赋值来实现.每一种环境变量控制了一项工作环境的设置.不加任何参数直接使用set命令可以显示出用户当前所有环境变量的设置.路径PATH是shell的一个环境变量。每种shell都有自己的配置文件,用户可以在配置文件里设置各种环境变量。环境变量的配置文件有系统环境配置文件和个人环境配置文件两

3、种。,用户工作环境,常用shell环境变量说明,1.系统环境配置文件:/etc/profile和/etc/bashrc profile文件在每个用户登陆系统时都会被执行,把其中的设置加入到用户的环境中.bashrc文件用于对subshell的环境进行设置。比如新启动了一个shell,此时启动的shell就是subshell,新的shell会从/etc/bashrc文件中读取环境配置.,环境设置文件有两种,2.个人环境配置文件:系统环境配置文件对所有用户对会起作用,只有root用户才有权对其进行修改。普通用户如果想定制自己的工作环境。可以编辑自己的个人环境设置文件。个人环境设置文件主要有二个:$

4、HOME/.bash_profile$HOME/.bashrc,环境设置文件有两种,sh:sh就是Bourne Shell的缩写,是UNIX系统最早的shell。 bash:bash就是Bourne Again Shell的简称,是Bourne Shell的扩展,完全兼容Bourne Shell。 csh:C Shell是一种比Bourne shell更适于编程的shell,是美国加州大学Berkeley分校开发出来的,具有核C语言相似的语法,但和sh不兼容。 tcsh:tcsh是Enhanced C Shell,是C Shell的一个增强版。 ksh:ksh是Korn Shell的缩写,集合

5、了C shell和Bourne shell的优点并且和Bourne shell完全兼容。 其它:ash,zsh,22.2.2 Shell的主要版本,Shell搭起了用户与操作系统间的沟通的桥梁,它提供了基本的操作界面,让用户可以下达各种命令、在系统中进行操作、产生彼此间的交互关系,因此可以将Shell看成是一种用户环境。 1.命令提示符 lrjhost lrj$ 这就是命令提示符 (提示符主要告诉用户现在可以下达命令,同时也表示先前 达的命令已经完成) 2.查看默认的Shell的种类 lrjhost lrj$ echo $SHELL 查看当前使用的shell 回车后显示为:/bin/bash,

6、如何去查看shell的版本,1.命令的一般格式是:命令+选项+参数 2.命令一般是小写字符串,注意区分大小写。3.选项通常是以减号“-”加上一个或数个字符表示,当在一个命令中使用 多个选项时,可以在减号后面把代表不同选项的字母合并起来。4.参数就是命令执行时处理的对象,可能是文件,目录或是设备。5.在同一行中可以有数个命令,不同命令间以分号“;”隔开。执行时首先执行前面的命令,执行完后顺序执行后面的命令。6.shell中的命令参数可以由另一个命令执行的结果来替代。,Shell中的命令规则,路径和文件,所谓命令补齐(Command-Line Completion)是指当键入的字符足以确定目录下一

7、个唯一的文件时只须按Tab键就可以自动补齐该文件名的剩余部分 。Bash还提供了别名功能(alias)。用户可以为一些比较长的命令设置别名,这样以后用户便可以输入相对简单的别名来代替该命令了。,shell中的命令补齐、别名功能和保留字,shell常用保留字的含义,别名的作用是让用户自定义新的命令名称来 替代原有的命令。 lrjhost lrj$ type test.txt 显示test.txt内容 bash:copy:command not found 没有此命令 lrjhost lrj$ alias type=cat 定义别名 lrjhost lrj$ type test.txt 效果同 l

8、rjhost lrj$ cat test.txt,Shell命令定义别名,lrjhost lrj# unalias type在命令行下所输入的别名只是暂时的,当退出系统后,再次登录时所有输入的别名命令都会消失。若希望每次登录时系统会自动设置别名,将alias命令加入该账号的自家目录的.bashrc文件中。 alias type=cat 加入此行,取消别名命令unalias,命令补全的功能可以帮助用户完成还未全部输入的命令 lrjhost lrj# chm此时按下Tab键,未输入完的命令就会变成最类似的chmod命令,命令补全,命令文件:输出重定向。表示把命令的输出输出到文件里,以取代标准输出。

9、 命令文件: 输出重定向。(用“”进行输出重定向会把原来的文件覆盖掉,而“”是把输出添加到原文件的末尾。) 命令A|命令B: “|”是管道符号,表示把命令A运行的结果,也就是命令A的标准输出作为命令B的标准输入。,Shell中的重定向和管道,重定向(redirect)可将某命令的结果输出到文件中,它有两种命令:和。可将结果输出到文件中,该文件原有的内容会被删除。则将结果附加到文件中,原文件内容不会被清除。 rljhost lrj$ ls -al dir.txt 将ls al命令执行结果输出到dir.txt文件中 rljhost lrj$ cat data1.txt dir.txt将data1.

10、txt内容附加到dir.txt文件之后,(重定向)、命令,管道(pipe)命令的符号是“|”,可将某命令A的结果输出给另一命令B去执行。格式:A | Broothost etc# ls | grep hosts 搜索并显示ls命结果中包含有“hosts”字符串的行 hosts hosts.allow 显示结果 hosts.deny,管道“|”命令,shell脚本(Shell Script)就是linux中的批处理文件,Shell Script简介,vi是一种广泛存在于各种UNIX和Linux系统中的文本编辑程序 Vi的功能十分强大,但是命令繁多,不容易掌握 Vi的发明者:bill joy,vi

11、编辑器的使用,vi是标准的Linux文本编辑程序 vi不是基于窗口的,所以,这个多用途编辑程序可以用于在任何类型的终端上编辑各式各样的文件,vi简介,vi filename 如果 filename已经存在,vi会打开现存文件 如果是一个新文件,vi会创建它,创建一个文件,屏幕的最后一行被称为状态行,用于显示文件名及文件中行和字符的个数,状态行,输入文本,执行命令,执行特定命令,输入模式,命令模式,末行模式,vi的三种模式,vi被运行时,通常处在命令模式下 键入以下命令 可以使vi退出命令模式,进入输入模式:I i A a O o,输入模式,在该模式中,可以输入命令来执行许多种功能 大多数的vi

12、命令都是由一个或两个字母加上一个可选数字组成 以冒号开头的命令实际上是ex 命令,即进入末行模式进行保存、退出等操作,命令模式,保存 :w后面接回车键 保存并退出 输入:wq后面接回车键 退出但不保存 输入:q后面接回车键 使用q!强行退出,保存及退出vi,向左移动一个字符:按h 向右移动一个字符:按l 向下移动一行:按j 向上移动一行:按k 移动到当前行的开头处:按 (即Shift6) 移动到当前行的结尾处:按 $ (即Shift4) 移动到顶部:按H(大写)使光标移动到屏幕的顶部 移动到中部:按M(大写)使光标移动到屏幕的中间 移动到底部:按L(大写)使光标移动到屏幕的底部,在文件中移动光

13、标,向前翻页一屏:要向前滚动(向下移动)一整屏,需按下Ctrl-f。光标将移动到新屏的左上角 向前滚动半屏:要向前滚动半屏,需按Ctrl-d 向后翻页一屏:要向后滚动(即向上移动)一整屏,需按下Ctrl-b 向后滚动半屏:要向后滚动半屏,需按下Ctrl-u,在文件中移动光标(续),添加:输入a后,在光标的右边插入文本 输入A,在一行的结尾处添加文本 插入:通过在命令模式下输入i,在光标的左边插入文本 通过在命令模式下输入I,在行首插入文本 插入新行:输入o,在当前光标位置下面打开一行 输入O,在当前光标位置上面打开一行,插入文本,撤消前一个命令:在最后一个命令之后立即输入u来撤消该命令 重复某

14、个命令 . 撤消对一行的更改:输入U来撤消你对一行所做的所有更改这个命令只有在你没将光标移动到该行以外时才生效,撤消更改,删除一个字符: 为删除一个字符,需将光标放置在要删除的字符上并输入x 为删除光标之前(其左边)的一个字符,需输入X 删除一个词或词的部分内容: 为删除一个词,需将光标放置到该词的开头并输入dw 为删除词的部分内容,需将光标放置到该词要保存部分的右边。输入dw来删除该词余下的部分 删除一行: 将光标放置到该行的任意处并输入dd 删除多行 ndd,删除文本,删除行的部分内容: 将光标放置到该行要保存部分的右边,并输入D。为删除光标左边的所有内容,须将光标放置到该行要删除部分的右

15、边,并输入d0(d-零)。 删除到文件的结尾: 为删除从当前行到文件结尾的所有内容,需输入dG,删除文本(续),复制一行命令:yy 粘贴命令:p 移动文本: 先将要移动的部分用删除命令删除,然后再粘贴就可以了 复制指定文件的内容 : r filename,复制和移动文本,查找一个字符串: 输入/,并在/后面输入要查找的串,然后按下回车 输入“n”跳转到该串的下一个出现处 输入“N”跳转到该串的上一个出现处,查找一个字符串,在一行内替换头一个字符串old为新的字符串new:s/old/new 在一行内替换所有的字符串old为新的字符串new:s/old/new/g 在两行内替换所有的字符串old为新的字符串new :#,#s/old/new/g 在文件内替换所有的字符串old为新的字符串new :%s/old/new/g 进行全文替换时询问用户确认每个替换需添加c选项 :%s/old/new/gc,替换一个字符串,显示行号 :set number 取消行号显示 :set nonumber 设置显示用户模式 :set showmode 设置文件只读 :set readonly,设置vi,掌握shell命令机制和shell管道的使用方法。 掌握vi编辑器的使用方法。,本章小结,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 职业教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号