天津大学操作系统_第1页
天津大学操作系统_第2页
天津大学操作系统_第3页
天津大学操作系统_第4页
天津大学操作系统_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验一UNIX常用命令(一)一、实验目的了解UNIX的命令及使用格式。熟悉UNIX/LINUX的常用基本命令。二、实验预备知识了解UNIX微型处理机的问世,给信息产业及整个人类社会带来了一场革命。随着基于Intel80X86处理器的IBMPC机及其兼容机以及接口设备性能指标的不断提高,人们所期望的真正的PC机多用户、多任务、分时OS应运而生。充满活力的UNIX就是其中重要一个。UNIX是一个操作系统,它于1969年由美国Bell实验室的Ken.Thompson和Denuis.Ritchie在DEC小型机上实现,用汇编语言编写的。1973年用由Denuis.Ritchie设计的C语言改写了其内核代码的大部分内容。1983年UNIX的设计师Ken.Thompson和Denuis.Ritchie荣获了图灵奖,充分肯定了UNIX在计算机世界中的地位。UNIX从一个非常简单的OS发展成为性能先进、功能强大、使用广泛的OS,并成为事实上的多用户、多任务OS的标准。因此,在国外特别是在美国,几乎所有的OS教科书中,都是以UNIX作为实例,对它做了较深入的阐述。UNIX系统的特性UNIX系统能取得如此巨大成功的原因,可归结于它具有以下的一系列特征:开放性开放性是指系统遵循世界标准规范,特别是遵循了开放系统互连OSI国际标准。凡遵循国际标准所开放的硬件和软件,能彼此兼容,可方便地实现互连°UNIX是目前开放性最好的OS,它能广泛地配置在从微型机到大、中型机等各种机器上,而且还能方便地将已配置了UNIXOS的机器,互连成计算机网络。多用户、多任务环境它既可以同时支持数十个乃至数百个用户,通过各自的联机终端同时使用一台计算机,而且还允许每个用户同时执行多个任务。例如:在进行字符图形处理时,用户可建立多个任务,分别处理字符的输入、图形的制作和编辑等任务。功能强大、实现高效UNIX系统提供了精选的、丰富的系统功能,它使用户能方便地、快速地完成许多其它OS所难于实现的功能。UNIX已成为世界上功能最强大的操作系统之一,而且它在许多功能的实现上还有其独到之处,且是高效的。例如,UNIX的目录结构、磁盘空间的管理方式、I/O重定向和管道功能等。这些功能及其实现技术已被其它OS所借鉴。提供了丰富的网络功能各种版本UNIX普遍支持TCP/IP协议,并已成为UNIX系统与其它OS之间联网的最基本的选择。在UNIX中包括了网络文件系统NFS软件,客户/服务器协议软件LanManagerClient/Server、IPX/SPX软件等。通过这些产品可以实现在UNIX系统之间、UNIX与Novell的Netware、MS-WindowsNT、IBMLANServer等网络之间的互联和互操作。(5)安全性UNIX至少提供二道安全防线。一是在系统登录时要求提供合法的注册名和口令字,二是UNIX根据用户的注册名控制用户对文件及对系统服务的存取权限控制。UNIX系统核心的结构整个UNIX系统分三个层次:第三层:SHELL,用户接口(命令接口、程序接口、图形用户接口)第二层:内核,对对象控制和管理的软件集合(处理机管理软件、存储器管理软件、设备管理软件、文件管理软件)

第一层:硬件,操作系统对象(处理机、存储器、设备、文件和作业)最低层是硬件,作为整个系统的基础。次低层是OS核心,包括教材所介绍的四大资源管理功能。最高层是OS与用户的接口Shell以及编译程序等。(1)内核。作为OS的核心,它应具有二个方面的接口:一方面是核心与硬件的接口,它通常是由一组驱动程序和一些基本的例行程序组成;二是核心与Shell的接口,由二组系统调用以及命令解释程序等组成。核心本身又可分成二大部分:一部分是进程控制子系统;另一部分则是文件子系统。二组系统调用分别与这二大子系统交互。(2)Shell是用户与系统交互作用的界面°UNIX中,Shell作为解释程序出现:接收用户打入的命令,进行分析,创建子进程,由子进程实现命令所规定功能,等子进程终止工作后,发出提示符。这也是Shell最常见的使用方式。Shell除了作为命令解释程序以外,还是一种高级程序设计语言,它有变量、关键字、各种控制语句,如if、case、while、for等,有自己的语法结构。利用Shell程序设计语言可以编写出功能强大、代码简单的程序,特别是它把相关的LINUX命令有机地组合在一起,可大大提高编程的效率。UNIX通常提供三种不同的Shell,即BourneShell(简称bash),C-Shell(简称csh)和KornShell(简称ksh)0BourneShell是AT&TBell实验室人员为UNIX开发的,它是其他Shell开发的基础,也是各种UNIX/LINUX系统上最常用、最基本的Shell。C-Shell是加州伯利克大学的BillJoy为BSDUNIX开发的,它与bash不同,主要模拟C语言。kshShell是AT&TBell实验室开发的,与bsh兼容,但功能更强大。(3)Shell程序示例使用Shell最简单的方法是从键盘上直接打入命令行。例如:ls-l/usr/exampleShell命令解释程序对打入的命令进行分析,并创建子进程,完成该命令所对应的功能。Shell程序也可存放在文件上,下面是二个Shell程序示例。例如:由三条简单命令组成的Shell程序(文件名为ex1)datepwdcd..执行这个Shell程序时,依次执行其中各条命令:显示日期、当前工作目录,返回上级目录。三、实验内容1.UNIX的登录与退出(1)登录在学院的FTP(48)的incoming文件夹中下载SSHClient文件到本地硬盘,并双击进行安装,安装后在桌面形成图标,再次双击进入,出现模拟mix环境的登录界面。选择quickConnection,出现登录界面,在界面中填写相关登录信息,如图1-1所示。图1-1登录界面(2)退出在UNIX系统提示符$下,输入logout、exit或shutdown。2.UNIX命令格式命令[选项][处理对象]例:ls-lamydir注意:•命令一般是小写字串。注意大小写有别•选项通常以减号(-)再加上一个或数个字符表示,用来选择一个命令的不同操作•同一行可有数个命令,命令间应以分号隔开•命令后加上&可使该命令后台(background)执行常用命令(1)目录操作和DOS相似,UNIX采用树型目录管理结构,由根目录(/)开始一层层将子目录建下去,各子目录以/隔开。用户login后,工作目录的位置称为homedirectory,由系统管理员设定。‘~’符号代表自己的homedirectory,例如~/myfile是指自己home目录下myfile这个文件。UNIX的通配符有三种:’*’和'?'用法与DOS相同,‘-'代表区间内的任一字符,如test[0-5]即代表test0,test1,,test5的集合。①显示目录文件ls执行格式:ls[-atFlgR][name](name可为文件或目录名称)例:ls显示出当前目录下的文件ls-a显示出包含隐藏文件的所有文件ls-t按照文件最后修改时间显示文件ls-F显示出当前目录下的文件及其类型Is-l显示目录下所有文件的许可权、拥有者、文件大小、修改时间及名称ls-lg同上ls-R显示出该目录及其子目录下的文件注:ls与其它命令搭配使用可以生出很多技巧(最简单的如"ls-l|more"),更多用法请输入囱--help查看,其它命令的更多用法请输入命令名--help查看.[szti2012@3oe[3Zti2012@3oe[3Zb2012@3oe[3Zb2012@3oe[3Eti2012@3oe[3Eti2012@3oe[galj2012@gpecdzliangjinzhangjin]?zhangjin]$zhangjin]$zhangjin]$舀mLn.-sLn-sLsIsmkflirzjmkflirzjlcdE]soutcem口u匚匚己sourcezj123cd[szb2012@soezj崩[szb2012@soecd-/homeysEb2012/zhanjjin/zj[szb2012@3oezj]$ci-bash:cd-:comandnotfound[szti2012@soezjcd.-/homeysEti2O12[szt)2012@3oe[szb2012@soeZjzjl[szti2012@3oeZjZjl[3Eti2012@3oecdzhangjinzhangjin]$Iszhangjin]$Is-1^annectedto6755HE-非51蹄-匚氏-hnac-md^②建新目录mkdir执行格式:mkdir例:mkdirdirectory-namedirl(新建一名为dir1的目录)③删除目录rmdir执行格式:rmdirdirectory-name或rmdirectory-name例:rmdirdir1删除目录dir1,但它必须是空目录,否则无法删除rm-rdir1删除目录dir1及其下所有文件及子目录rm-rfdir1不管是否空目录,统统删除,而且不给出提示使用时要小心④改变工作目录位置执行格式:例:cdcdcdcdcdcd改变目录位置至用户login时的workingdirectorydir1改变目录位置,至dir1目录~user改变目录位置,至用户的workingdirectory..改变目录位置,至当前目录的上层目录../user改变目录位置,至上一级目录下的user目录cd[name]cd/dir-name1/dir-name2改变目录位置,至绝对路径(Fullpath)cd-回到进入当前目录前的上一个目录显示当前所在目录pwd执行格式:pwd查看目录大小du执行格式:du[-s]directory例:dudir1显示目录dir1及其子目录容量(以kb为单位)du-sdir1显示目录dir1的总容量显示环境变量echo$HOME显示家目录echo$PATH显示可执行文件搜索路径env显示所有环境变量(可能很多,最好用"env|more”,"env|grepPATH等)修改环境变量,在bash下用export,如:exportPATH=$PATH:/usr/local/bin想知道export的具体用法,可以用shell的help命令:helpexport

(2)文件操作①查看文件(可以是二进制的)内容cat执行格式:catfilename或morefilename或catfilename|more例:catfilel以连续显示方式,查看文件file1的内容morefilel或catfile1|more以分页方式查看文件的内容②删除文件rm执行格式:rmfilename例:rmfile?rmf*③复制文件cp执行格式:cp[-r]sourcedestination

例:cpfilelfile2将filel复制成file2cpfileldirl将filel复制到目录dirlcp/tmp/filel将filel复制到当前目录cp/tmp/filelfile2将filel复制到当前目录名为file2cp-rdirldir2(recursivecopy)复制整个目录。④移动或更改文件、目录名称mv执行格式:mvsourcedestination例:mvfilelfile2将文件filel,更名为file2mvfileldirl将文件filel,移到目录dirl下mvdirldir2⑤比较文件(可以是二进制的)或目录的内容diff(namel、name2同为文件或目录)比较filel与file2的不同处比较dirl与dir2的不同处执行格式:diff(namel、name2同为文件或目录)比较filel与file2的不同处比较dirl与dir2的不同处文件中字符串的查找grep执行格式:grepstringfile例:grepabcfilel查找并列出串abc所在的整行文字sawyerHUnux@lDcalhost:Mx文件〔F)编辑(E)查看(V)搜索(S)终端(T)帮助〔H)sawyerjlinux^localhost~]$grepa.bashrc.bashrcSourceglobaldefinitionsif[-f/etc/bashrc];then./etc/bashrcUncommentthsfollowinglineifyoudon1tlikesystemctl1sauto-pagingfeatureUserspecificaliasesandfunctions[sawyerjlinux^localhost~]$[]文件或命令的路径寻找_执行格式一:whereiscommand显示命令的路径执行格式二:whichcommand显示路径及使用者所定义的别名执行格式三:whatiscommand显示命令的功能摘要执行格式四:findsearch-path-namefilename-print搜寻指定路径下某文件的路径执行格式五:locatefilename根据系统预先生成的文件/目录数据库(/var/lib/slocate/slocate.db)查找匹配的文件/目录,查找速度很快,如果有刚进行的文件改变而系统未到执行定时更新数据库的时间,可以打入updatedb命令手动更新.建立文件或目录的链接ln例:lnsourcetargetl建立source文件(已存在)的硬链接,命名为targetlln-ssourcetarget2建立source文件的符号链接,命名为target2

(3)系统询问与权限口令①查看系统中的使用者执行格式:who查看username

执行格式:whoamI查看自己的username改变自己的username的帐号与口令su执行格式:suusername例:suusername输入帐号password输入密码④文件属性的设置chmod改变文件或目录的读、写、执行的允许权执行格式:chmod[-R]modename其中:[-R]为递归处理,将指定目录下所有文件及子目录一并处理mode为3-8位数字,是文件/目录读、写、执行允许权的缩写(r:read,数字代号为〃4〃w:write,数字代号为"2"x:execute,数字代号为"1”)rwxother(o)mode:rwxuser(u)dir1缩写:例:chmod755rwxgroup(g)将目录dir1设定成任何人皆有读取及执行的权利,但只有拥有者可作写修改。其中7=4+2+1,5=4+1chmodchmodchmodchmod700o+x

g+x

o-rfile1file2file3file4改变文件或目录所有权执行格式:例:chownchownchownchownuser所有chown[-R]user.foxuser.fox-Ruserfile1file1file1dir1将file1设为拥有者可以读、写和执行将file2,增加拥有者可执行的权利将file3,增加组使用者可执行的权利将file4,除去其它使用者可读取的权利chownusernamename将文件file1改为user所有将文件file1改为fox组所有将文件file1改为fox组的user所有将目录dir1及其下所有文件和子目录,改为groupsgroups⑦改变文件或目录的组拥有权chgrpchgrp[-R]vlsifile1-Rimagedir1检查用户所在组名称执行格式:执行格式:例:chgrpchgrpimage群组groupnamename将文件file1改为vlsi组所有将目录dir1及其下所有文件和子目录,改为⑧改变文件或目录的最后修改时间执行格式:touchnametouchsawyer_Unux@localhost:/tmp文件(F)编辑(E)查看(U)搜索(S)终端(T)帮助(H)ll--tiroot@localhosttmp]#touchll--ti11--tiroot@localhosttmp]#11testtouch;11--time=atime11--ti-rvr-r--r--.1rootroot09月2520:36testtouch-rv/-r--r--.1rootroot09月2520:36testtouch-rvj-r--r--.1rootroot09月2520:36testtouchroot@localhosttmp#touch-d"2daysago"testtouchroot@localhosttmp#11testtouch;11--time=atimetesttouch;me=ctimetesttouch-rv/-r--r--.1rootroot09月2320:38testtouch-rvr-r--r--.1rootroot09月2320:38testtouch-rvr-r--r--.1rootroot09月2520:38testtouchme=ctimetesttouchroot@localhosttmp]#touch-10812051308testtouch'root@localhosttmp]#11testtouch;11--time=atimetesttouch;me=ctimetesttouch11--tirvr-r--r--.1rootroot012月52008testtouchrvr-r--r--.1rootroot012月52008testtouchrvr-r--r--.1rootroot09月2520:40testtouchroot@localhosttmp]#四、实验要求根据命令的格式,在模拟Unix环境测试。每个命令换参数观察结果实验二UNIX常用命令(二)一、实验目的了解UNIX的命令及使用格式。熟悉UNIX/LINUX的常用基本命令。练习并掌握UNIX提供的vi编辑器来编译C程序二、实验预备知识LINUX中包含了很多软件开发工具。它们中的很多是用于C和C++应用程序开发的。C是一种能在UNIX的早期就被广泛使用的通用编程语言。它最早是由Bell实验室的DennisRitchie为了UNIX的辅助开发而写的,从此C就成为世界上使用最广泛的计算机语-1=1。C能在编程领域里得到如此广泛支持的原因有:它是一种非常通用的语言,并且它的语法和函数库在不同的平台上都是统一的,对开发者非常有吸引力;用C写的程序执行速度很快;C是所有版本UNIX上的系统语言;三、实验内容1.进程操作查看系统目前的进程ps执行格式:ps[-aux]例:ps或ps-x查看系统中属于自己的processps-au查看系统中所有使用者的processps-aux查看系统中包含系统内部及所有使用者的processps-aux|grepapache找出系统中运行的所有名称中带有"apache"串的process

查看正在background中执行的process执行格式:jobs结束或终止进程kill执行格式:killPID(PID为利用ps命令所查出的processID)例:kill456结束或终止在background中的进程kill执行格式:kill%n例:kill%1终止在background中的第一个jobkill%2终止在background中的第二个job显示系统中程序的执行状态例:top-q不断地更新、显示系统程序的执行状态第一行显示的项目依次为当前时间、系统启动时间、当前系统登录用户数目、平均负载。第二行为进程情况,依次为进程总数、休眠进程数、运行进程数、僵死进程数、终止进程数。第三行为CPU状态,依次为用户占用、系统占用、优先进程占用、闲置进程占用。第四行为内存状态,依次为平均可用内存、已用内存、空闲内存、共享内存、缓存使用内存。第五行为交换状态,依次为平均可用交换容量、已用容量、闲置容量、高速缓存容量。PID每个进程的ID。PPID每个进程的父进程ID。UID每个进程所有者的UID。USER每个进程所有者的用户名。PRI每个进程的优先级别。NI该进程的优先级值。SIZE该进程的代码大小加上数据大小再加上堆栈空间大小的总数。单位剔B。TSIZE该进程的代码大小。对于内核进程这是一个很奇怪的值。DSIZE数据和堆栈的大小。TRS文本驻留大小。按〃ctrl+c〃停止查看sawyer.linux@localhost:Mx文件〔F)编辑〔E)查看(V)搜索饵)终端⑴帮助〔H)[root@localhost~]#toptop-21:23:21up1:26,2users,loadaverage:0.13,0.13,0.10Tasks:201total,1running,200sleeping,0stopped,0zombie%Cpu(s):3.1us,0.6sy,0.0ni,92.0id,4.0wa,0.2hi,0.1si,0.0stKiBMem:3950936total,1851284used,2099652free,41848buffersKiBSwap:10239996total,0used,10239996free,814228cachedIIPIDUSERPRNIVIRTRESSHRS%CPU%MEMTIME+COMMAND11850sawyer+200212611231753642588S9.38.01:40.15gnome-shell722root200179924178328104S3.00.50:58.51Xorg1937sawyer_+20046771670243548S1.00.20:13.04ibus-daemon3344sawyer_「+2008099841975613444S0.70.50:09.40gnome-terminal-603root200191321164928S0.30.00:00.58irqbalance4101root200000S0.30.00:00.07kworker/u32:24154root20012365216361156R0.30.00:00.07top1root2005160874802468S0.00.20:02.17systemd2root200000S0.00.00:00.00kthreadd3root200000S0.00.00:00.06ksoftirqd/O5root0-20000S0.00.00:00.00kworker/0:OH7rootrt0000S0.00.00:00.27migration/0[root@localhost~]#□|

以树状图显示执行的程序pstree例:pstree-h列出进程树并高亮标出当前执行的程序sawyer_linux@locailhost:M文件(F)编辑(E)查看(V)搜索(S)终端(T)帮助(H)[root@localhost~]#pstree-hsystemd—i—ModemManager2*[(ModemManage「}]—NetworkManager—|—dhclientI—3^[(NetworkManager}]—2*[abrt-watch-log]—abrtd—accounts-daemon2*[(accounts-daemon}]—alsactl—anacnon—at-spi-bus-laun—|—dbus-daemon(dbus-daemon}1—3*(at-spi-bus-laun}]—at-spi2-registr(at-spi2-registr}—atd—auditd■audispd—i—sedispatchI—(audispd}{auditd}Iavahi-daemonavahi-daemonbluetoothdchronydcolard?米[(colord}]crondcupsd2^[dbus-daemon(dbus-daemon}]dbus-launchdconf-service2*[(dconf-service}]evolution-calen'米(evolution-calen}evolution-sourc2米(evolution-firewalld{firewalld}gconfd-2gdm1soure}—gdm-simple-Slav——Xorg—gdm-session-wor—\r-gnome-session—i11—abrt-applet(abrt-appl+—deja-dup-monito2*[(de+—evolution-alarm来—gnome-settings-米[{gn+—gnome-shell—i—chrome—i—2+—a.―LAJ'‘JpLj」3来[(gnome-terminal-}-]—goa-daemon3^[(goa-daemon}]—gsd-printer{gsd-printer}—gvfs-afc-volume2来[(gvfs-afc-volume}-]—gvfs-goa-volume(gvfs-goa-volume}—gvfs-gphoto2-vo(gvfs-gphoto2-vo}—gvfs-mtp-volume{gvfs-mtp-volume)-—gvfs-udisks2-vo2来[(gvfs-udisks2-vo}-]—gvfsd{gvfsd}—gvfsd-burn{gvfsd-burn}—gvfsd-fuse^^4^[(gvfsd-fuse}]—gvfsd-metadata{gvfsd-metadata}—gvfsd-1rash3*[{gvfsd-1rash}]—ibus-daemon—i—ibus-dconf3*[(ibus-dconf}]ibus-engine-lib2米[(ibus-engine-lib}]I—2*[(ibus-daemon}]-ibus-xll—2^[{ibus-xll}]—irqbalance-libvirtd—10*[{l比virtd}]—Ivmetad—meelog—mission-control2*[(mission-control}-]—Liu_L3is.sur小[ililimxnu—upowerd2*[{upowerd}]—wpa_supplicantroot@localhost~]#|(ev+I1+通信类(1)本地工作站与UNIX服务器间的文件传输ftp执行格式:ftp主机名或ftp主机的IP地址后续执行步骤如表2-1所示。表2-1通讯类命令表name:输入帐号password:输入密码ftp>help显示ftp可使用的所有命令ftp>lcddir1改变本地机当前目录为dir1ftp>getfile1将UNIX服务器文件file1拷到本地机ftp>putfile2将本地文件file2,拷到UNIX服务器

ftp>!ls显示本地机当前目录下所有文件ftp>!pwd显示本地机当前所在目录下所有文件ftp>ls显示UNIX服务器当前目录下所有文件ftp>dir显示服务器当前目录下所有文件(略同于UNIX的ls-l指令)ftp>pwd显示UNIX服务器当前所有目录位置ftp>cddir1更改UNIX服务器的目录至dir1下ftp>mget*.c将服务器中.c文件拷到本地机中ftp>mput*.txt将所有.txt文件拷贝到服务器ftp>quit结束ftp工作ftp>bye结束ftp工作(2)检查与UNIX服务器连接是否正常ping执行格式:pinghostname或pingIP-Address例:ping(3)将文件当做E-mail的内容送出mail执行格式:mail-s“Subjict-string”username@address<filename例:mail-s“program”user<file.c功能:将file.c当做mail的内容,送至user,subjectname为program传送E-mail给本地UNIX服务器上的用户mail执行格式:mailusername读取信件mail执行格式:mail列出套接字使用情况socklist查看网络连接netstatsawyer.linux@localhost:M文件(F)编辑(E)查看(V)搜索(S)终端(T)帮助(H)[sawyerjlinux@localhost~]$netstatActiveInternetconnections(w/oservers)ProtoRecv-QSend-QLocalAddressForeignAddressStatetcpCiU172.IS.74.77:414U5hkg03sl3-in-f5.1e:httpsESTABLISHEDtcpUCi7:53767hkg03sl4-in-f24.1e:httpESTABLISHEDtcpdCl172,18.74,77:53778ea-in-fl39.1el00.:httpsESTABLISHEDActiveUNIXdomainsockets(w/oservers)ProtoRefCntFlagsTypeStateI-NodePathunix8[1DGRAM9247/run/systemd/journal/socketunix2[]DGRAM33120@/org/freedesktop/systemdl/notify/4702727432847705958unix26[]DGRAM'9249/dev/logunix3SEQPACKETCONNECTED28668©00011、unix2[]DGRAM9808@/org/freedesktop/systemdl/notifyunix2[]DGRAM10(523/run/systemd/shutdowndunix2DGRAM24830@/org/freedesktop/systemdl/notify/3925239075638919168unix2[]DGRAM2i:i870@/org/freedesktop/systemdl/notify/6352285926887896305unix3STREAMCONNECTED32379unix3[1STREAMCONNECTED32299@/tmp/dbus-C4UCyHjVunix3STREAMCONNECTED2G737unix3STREAMCONNECTEDie.2uiunix3[1STREAMCONNECTED16106/run/systemd/journal/stdoutunix3STREAMCONNECTED31652unix3[]STREAMCONNECTED19565/var/run/dbus/system_bus_socketunix3[1STREAMCONNECTED26410/var/run/dbus/system_bus_socketunix3[]STREAMCONNECTED24783/var/run/dbus/systQm_bus_socketunix3STREAMCONNECTED20942unix3[]STREAMCONNECTED30846unix3[]STREAMCONNECTED28237unix3[]STREAMCONNECTED26439/var/run/dbus/system_bus_socketunix3[1STREAMCONNECTED18278/run/systemd/journal/stdoutunix3STREAMCONNECTED29655unix3STREAMCONNECTED14959unix3[]STREAMCONNECTED30(579@/tmp/dbus-UvGoOSRWHHunix3STREAMCONNECTED1S524unix2DGRAM34976unix3[]STREAMCONNECTED23825@/tmp/dbus-aye60v6nunix2DGRAM18062文件编辑器vivi是在UNIX上被广泛使用的中英文编辑软件。vi是visualeditor的缩写,是UNIX提供给用户的一个窗口化编辑环境。进入vi,直接执行vi编辑程序即可。例:$vitest.c显示器出现vi的编辑窗口,同时vi会将文件复制一份至缓冲区(buffer)。vi先对缓冲区的文件进行编辑,保留在磁盘中的文件则不变。编辑完成后,使用者可决定是否要取代原来旧有的文件。vi的工作模式vi提供二种工作模式:输入模式(insertmode)和命令模式(commandmode)。使用者进入vi后,即处在命令模式下,此刻键入的任何字符皆被视为命令,可进行删除、修改、存盘等操作。要输入信息,应转换到输入模式。命令模式在输入模式下,按ESC可切换到命令模式。命令模式下,可选用下列指令离开vi,如表2-2所示。

表2-2vi命令表q!离开vi,并放弃刚在缓冲区内编辑的内容wq将缓冲区内的资料写入磁盘中,并离开viZZ同wqx同wqw将缓冲区内的资料写入磁盘中,但并不离开viq离开vi,若文件被修改过,则要被要求确认是否放弃修改的内容,此指令可与:w配合使用

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论