您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 35hp_unix学习笔记
第一部分:UNIX系统基础第一章:UNIXshell1.UNIX操作系统的核心称为内核,内核是处理用户软件和计算机硬件之间所有通信的一个软件.由内核决定如何同外围设备通信等等.UNIX用户是无法与内核直接交互的,而是经常同一个叫做UNIXshell的程序打交道.shell是一个命令解释器.shell接受用户的命令,解释它们并采取必要的动作去执行这个命令.这也为用户提供这些命令的输出.Shell是一个UNIX用户的命令解释器。它从用户那里取得输入并根据输入完成一个动作。内部命令内置在shell中而,外置命令以单独的文件保存。如果你使用了一个长度大于8的口令,第8个字符以后的字符被忽略。2.在UNIX系统中,每一个用户都有一个独一无二的号码和用户名联系在一起,这个号码叫做UserID.Root用户的ID是0因此任何用户拥有了这个ID也就拥有了超级用户权限.3.$表示为普通用户.#表示为超级用户.4.按ESC+K:重新执行上一次的命令.5.History命令用来回调以前使用过的命令.History-3:显示最近使用的三个命令.6.别名:aliasdir=ls用dir来取代ls7.启动文件有两种:系统启动文件和用户启动文件.系统启动文件对系统中所有用户都是通用的,但用户启动文件可以为每一个用户定制.HP-UX系统的启动文件叫作profile存放在/etc目录下用户的启动文件叫作.profile存放在用户的主目录下.8.w命令会告诉你系统已经启动多长时间,当前的时间及登录的用户在做什么.9.命令链接是为了给频繁使用的命令提供一个较短的名字.10.打印标签:banner字符banneryujile.11.cal显示日历12.shell允许用户在单独一行里输入多个命令.每个命令之间用冒号分隔.13.请注意口令长度必须为6~8个字符,并且同时包括字符和数字.口令中至少有两个字符是字母而且至少有一个是数字或特殊字符.(第八个字符以后的字符都会被忽略)第二章:管理文件和目录1.创建文件cat文件名注意:在每一行的结尾按Enter,完成文本的输入后按ctrl+d以结束文本输入过程并保存文件。2.在UNIX里执行文件没有特殊的名字,文件权限显示哪个文件是可执行的,哪个是不可执行的。3.ls–a可以显示隐含文件包括以一个点(.)开头的隐含文件4.文件权限d表示目录–表示常规文件5.ls–f或lsf命令在显示目录时:在目录名结尾附加“/”符号。6.rm–rf删除一个非空目录。不会对用户有任何警告。7.UNIX文件系统由目录和文件构成,顶级目录叫做根目录,用“/”符号表示,所有其他目录和文件在根目录里面。一个目录的上一级叫做父目录,而下一级目录叫做子目录。8.无论何时创建一个新目录,两个条目自动创建在新目录里,它们是“.”(参照于当前目录)和“..”(参照于当前目录的父目录)“.”字符是指当前目录的一个相对路径.9.两个或多个文件可以用mv命令同时移动,目标必须是一个目录名.mv–i当目标文件已存在时,会有提示.10.通配符:*星号匹配零个或多个字符问号?只能匹配一个字符,[]在方括号检查一定范围内的字符.11.grep–i区分大小写grep–v所有不匹配字符串模板的行会显示出来.grep–c检测出字符在文件中出现的次数,但是不显示包含字符串的行.12.tail–n3/etc/passwd显示文件的最后三行.13.软链接可以跨文件系统建立,软链接是一个特殊类型的文件,:lnmyfileabc创建一个硬链接abc到myfile文件ln-smyfileabc创建一个软链接abc到myfile文件第3章环境变量1.用户一旦登录HP-UX系统,就会启动一个shell并且等待用户输入命令,为了执行这些命令,shell需要知道一些所用环境的信息.shell在环境变量中存储环境信息.2.当shell执行一个命令时,UNIX在内存中为这个命令创建一个进程,这个进程叫做shell的子进程,因为是shell创建了这个进程,这个shell叫做该命令进程的父进程.3.所有子进程从父进程shell继承环境变量,另一方面,shell变量由shell在局部设置而且对于子进程是不可见的.每一个子进程取得一份环境变量的拷贝并且允许对这些变量进行修改.但是要记住这些变化只对子进程有限制而不会作用于父进程.这就意味着对环境变量的修改会随着子进程的结束而丢失.或者说子进程不能修改父进程的变量.环境变量(全局变量):被所有子进程继承,通常包括系统特殊信息Shell变量(局部变量):不被子进程继承,通常用于保存shell程序的临时值4.$符号作为变量名的开始,$符号告诉echo命令这个参数是一个变量,而不是简单的字符串.echo命令显示的是它的参数文本,变量的值.5.UNIX用户用{}括起一个变量名以避免混淆.在一个shell变量和一些其他文本共用时必须使用方括弧.6.单引号之间的一切原封不动地指定给了变量.7.当你只按下”~”键而不按shift键时就会显示反引号”`”它用于指定一个命令的结果给变量.8.HOME是在用户登录HP-UX时自动设置的,它包含了用户主目录的路径,参照你的主目录下的.profile文件,可以用$HOME/.profile作为这个文件的完整路径.9.TERM包含你的终端名或类型,它一般通过用tset或ttytype命令/etc/profileshell启动文件设置.10.导出shell变量:Shell变量对地子进程是不可见的而环境变量是可见的,我们可以导出shell变量,这样它就对子进程有效了,export命令正是用于这个目的.为了让子进程继承变量的正确值:如果你改变了一个环境变量,就要导出它.第4章输入/输出重定向和管道1.UNIX命令是以简单的文本(字母数字)数据和标点符号为输入.一般,输出也是简单文本.2.无论什么时候启动一个命令,它都会打开三个数据流:标准输入(stdin),标准输出(stdout)标准错误(stderr),每个unix命令从stdin获得输入数据而将正常的输出传送给出stdout,并且把错误消息交给stderr.这些数据流通常称为标准输入/输出.3.UNIX把所有打开的文件与一个称为文件描述符的数字联系起来,文件描述0用于标准输入,1用于标准输出.而2用于标准错误.4.UNIXshell可以按用户的需要把这些数据流重定向到一个文件,一个设备或其它命令上.这个过程叫做输入/输出重定向.5.管道:可以把一个命令的输出发送给另一个命令的输入.它经常用于处理和格式化一个命令的数据流程,并使它更易理解.6.UNXI也称为基于文件的操作系统,即任何类型的输入或输出设备都可以被认为是一个文件,所有连接到系统的设备通过设备驱动文件控制.当你想要打印时,只须将它定向到一个打印设备文件.7.命令输出重定向,覆盖原文件中的内容.命令输出重定向,不覆盖原文件中的内容,追加到文件尾.输入重定向8.控制台的设备文件是/dev/console9.lsxyz2abc:现在没有任何显示,因为错误消息被保存在一个名为abc的文件中.可以用cat命令来查看abc文件.10.sortxyzsorted2error这个命令的输出重定向到一个名为了sorted的文件却错误定向到名为error的文件的情况11.who|cut–f1–d“”|grepmike:cut命令从用空白字符分隔的域中读取输入并获取每一行的第一个域.12.tee命令用于实现一个T接头功能,它从stdin得到输入并把同样的内容同时写到stdout和别的文件中.who|teewhofile13.标准I/O重定向:重定向stdout覆盖原文件中的内容重定向stdin重定向stdout并追加或创建一个文件.2重定向stderr2&1发送stderr和stdout到同一个文件中.|&连接prog1的stdout和stderr到prgo2的stdin管道.(prog1表示一个命令或可执行文件)第5章VI编辑器在插入模式中,任何键入的字符都被插入到一个文件缓冲区中。在命令模式中,每一个键入的字符被认为是一个命令。剪切---粘贴在打开的文件缓冲中执行。导入—导出是针对磁盘文件来完成的。移动光标命令:I右移一个字符h左移一个字符j下移一行k上移一行G到文件最后一行,nG到文件的第n行.H到屏幕的第一行L到屏幕的最后一行M到屏幕的中间一行:setnumber命令指示vi显示每一行的行号.:setreadonly设置当前文件为只读.插入:I从当前行的开头开始插入文本A从当前行的结尾开始插入文本i从当前的光标位置开始插入文本a从当前光标位置的下一个字符处开始插入文本删除:x删除当前光标所在位置上的字符.X从当前光标位置开始删除前一个字符nx从当前光标位置开始删除n个字符dd删除当前行dG删除当前行一直到文件结尾替换:r仍保持在命令模式替换当前字符R直到按下esc键才替换多个字符.s替换当前字符并进入插入模式.撤消:u命令或.点滚动:Ctrl+b回滚一屏ctrl+f向前滚一屏Ctrl+u回滚半个屏ctrl+d向前滚半个屏幕查找和替换/text从当前光标位置开始向前查找text?test从当前光标位置开始向后查找test/向前重复前一次的查找?向后重复前一次的查找7,23t25将挎贝第7行至23行并把这引行的内容粘贴到第55行后面VI编辑器有一个配置文件名为.exrc它存放在每一个用户的主目录下.创建了这个文件后,无论什么时候启动编辑器,它会首先读取$HOME/.exrc文件并自动设置选项。vi编辑器命令状态:j,k,h,l:上下左右0:行首$:行尾i,I:插入命令,i在当前光标处插入I行首插入a,A:追加命令,a在当前光标后追加,A在行末追加o,O:打开命令,o在当前行下打开一行,O在当前行上插入一行r,R:替换命令,r替换当前光标处字符,R从光标处开始替换数字s:替换指定数量字符x:删除光标处字符dd:删除当前行d0:删除光标前半行d$:删除光标后半行ctrl+f:后翻页ctrl+b:前翻页G:文件尾数字G:数字所指定行/string查找字符串n继续查找N反向继续查找%查找对应括号u取消上次操作ex命令状态:setnumber显示行号:setsmd显示显示状态:0文件首:1,5copy7块拷贝:1,5del块删除:1,5move7块移动:1,$s/string1/string2/g全文件查找string1并替换为string2:wq!存盘退出第六章正则表达式正则表达式包括字符串,定位符或锚字符以及有特殊特殊的元字符。在UNIXshell执行一个含有正则表达式的命令之前,每一个正则表达式都被展开为它所表达的内容。如果该命令是一个内部命令,它由shell本身执行。如果它是一个外部命令,命令执行过程按如下步骤完成:1.shell在所有PATH变量声明的目录中查找一个有效的命令2.选项和参数被解析,参数根据所使用的特殊字符被展开3.命令被调用4.命令结果显示给用户。定位符是用来指定文本在一行中的位置的字符,有时也叫锚字符,^字符是指定的起始位置。它用于在一行文本的起始匹配一个字符串。美元符号$是结尾定位符,用来指定结尾有特定字符串的一行。$出现在一行的结尾则用于匹配一个字符串。^在一行的起始位置匹配一个字符串。^$可以找出一个文件中的空白行,如果你想计算空白行,可以把grep命令的输出传送给wc命令:grep^$myfile|wc–l空白行指不包含任何字符的行。匹配一个包含空格字符的行:^[]$单词定界符\和\例如grep\[tT]his\匹配在文件中作为完整单词出现的“this”,”This”6.egrep命令使用一个扩展的正则表达式,它不同于使用标准正则表达式的grep的命令,如果和egrep命令一起在扩展的正则表达式中使用圆括号和逻辑OR(或)操作。点号每次匹配一个字符(包括换行符)egrep`^(From|Date):`$HOME/mbox找出保存在$HOME/mbox文件中有包含发送者地址和
本文标题:35hp_unix学习笔记
链接地址:https://www.777doc.com/doc-3639695 .html