




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
UNIX 简介1. UNIX版本 UNIX 操作系统1969 年在贝尔实验室诞生。在七十年代的中期,一些大学得到使用UNIX 的许可,并很快在学院之间得到广泛流行。当UNIX 传播到位于California 的Berkeley 大学的时候,Berkeley 大学的使用者们创建了自己的UNIX 版本,在得到国防部得支持后,他们开发出了许多新的特性。当AT&T 意识到这种操作系统的潜力后就开始将UNIX 商业化,为了加强产品性能,他们在AT&T 的不同部门进行UNIX 系统开发,并且开始在系统中结合Berkeley 开发出的成果。由此形成了Unix的两个重要派系:l 加州大学伯克力分校的BSD版(Berkeley Software Distribution)l AT&T的Unix System V经历一段时间后,两个派系决定休战,然后出现了包含BSD和System V所有特性的新版本:System VSVR4目前比较流行的UNIX版本还有两个派系l XENIX 版本,由SCO机构发行,目前功能与System V相似l OSF/1版本,OSF/1仍以BSD为主,包括一些System V的功能,Digital是主要发行公司SUN的早期版本SUN OS 4.X,HP的HP-UX是基于BSD版本开发的,SUN现在的版本Solaris(SUN从SUNOS5开始命名为Solaris2),IBM的AIX都是基于Unix System V开发的。由于这两个派系支持的C语音函数有些不同,因此SUN在新版本中保留了目录/ucb, /ucblib, /ucbinclude 来提供BSD版本的C函数支持。注:ucb 是加州大学伯克力分校(University of California,Berkeley)2. UNIX构成UNIX主要由三个部分构成:l UNIX核心l 用户进程l 文件系统UNIX核心主要是由C语音编写的,还有少部分汇编代码,完成最基本的任务:l 处理硬件终端和例外l 提供系统服务l 建立用户进程并调度执行3. UNIX文件系统Unix文件系统是树形结构,每一个文件系统对应文件系统/dev目录下的一个设备文件。Unix文件系统都有一个根文件系统(目录名是/),其他文件系统都是挂接在根文件系统或者其子文件系统的目录上。文件系统常见目录结构如下图: 系统重要目录的功能说明:n /opt 这个目录会用来存放应用程序和产品。开发人员和系统管理员会用它来安装新的产品和本地的应用程序。n /usr/bin 这个目录包含了基础的UNIX系统操作和文件处理的命令,所有的用户都有权限读取这个目录(bin 是 binary 的缩写)。 n /usr/sbin 这个目录中有所有的在帮助手册1m章节中的命令,这些命令都是系统管理命令。大都必须是超级用户才能使用其中的大多数命令。 n /usr/lib 这个目录包括应用程序使用的文档和共享的库n /usr/share 这个目录包括独立提供的文件(其中最重要的是帮助手册)n /usr/share/man 这个目录包括所有的语在线帮助页有关的所有的文件。n /uar/local/bin 这个目录通常用来存放本地开发的程序和工具n /usr/contrib/bin 这个目录通常用来存放公用的程序和工具n /sbin 这个目录包括基本的用于启动与关闭系统的命令n /home 存放用户目录n /etc 这个目录中有许多的系统配置文件n /stand/vmUNIX 这个文件存储的是UNIX系统内核的文件。n /tmp 这个目录通常被操作系统的一个临时空间,通常是运行时的中间文件,或是工作临时文件时使用。 n /dev 这个目录下有那些可以被联接到你系统中的硬件设备的文件,这些文件是作为一个到设备之间的联接。n /mnt 这个目录用来挂接其它的设备 (例如:光驱)n /var/mail 这个目录包括每一个有邮件的用户的信箱。 n /var/tmp 这个目录通常被用于用户的临时空间。n lost+found 存放修复文件系统时系统启动时根据配置文件自动挂接文件系统,配置文件如下:n Solaris: /etc/vfstabn HP-UX:/etc/fstabn AIX:/etc/filesystems3.1. 文件系统类型n ufs(User File System)n cdfs(CDROM File System)n 日志文件系统 jfs,vxfs n nfs(NetWork File System)ufs是古老的文件系统,它的结构如下:卷标 引导块 超级块 超级块副本 紫色表示第一柱面组,蓝色表示第二柱面组 柱面组块 i结点表 数据块文件系统由一些柱面组构成。每个文件系统有卷标(label)、引导块、超级块(supperblock)、柱面组块(cylinder group block)和 i结点表。16个扇区为一个文件系统块。卷标 在硬盘的第一个扇区(512bytes)上,其后的15个扇区是引导块(boot block), 卷标和引导块加起来,占第一个文件系统块(8192bytes)。每个文件系统都有引导块,只有根(root)文件系统的卷标和引导块是激活的。超级块 描述了文件系统,占用接下来的16个扇区。它包含参数:块数、柱面组数、块长度、碎片长度、优先级、硬件描述(从卷标获得)、挂接点等。当文件系统挂接时,超级块被读入内存,以后所有建立、删除文件的操作都在超级块的内存副本上进行,若系统未将超级块写回硬盘之前,操作系统突然崩溃,文件系统将受损。由于超级块的重要性,它被复制到每个柱面组。柱面组块 记录了柱面组的I结点总数和数据块总数、柱面组的目录数、空闲块数、空闲结点数、空闲碎片数、空闲块表、已用I结点表。根i结点 是每个文件系统的根目录,i结点0不作普通用途,而传统上i结点1指向坏块(现在已不作此用途),因此,根i结点为2,I结点3指向lost+found目录。i 结点记录中有关文件的信息文件类型和访问方式链接数用户标识组标识文件长度访问时间写时间修改时间12个直接数据块一次间接块二次间接块三次间接块块计数12个直接数据块可使文件容量达到96KB。一次间接块可使文件容量达到16MB(每个块有2048个指针,可指向2048个数据块)。二次间接块可使文件容量达到32GB。SUN操作系统目前还是使用ufs格式的文件系统,ufs使用内存作为文件系统的缓冲区,系统掉电引起的缓冲区内容未更新到硬盘将导致文件系统损坏。AIX使用的是JFS,HP使用的VxFs是新型的文件系统,使用硬盘作为文件系统的缓冲区,降低性能来换取系统的高可靠性。而且此文件系统允许动态改变文件系统的大小,ufs文件系统无法扩大,只能通过重建文件系统来实现。NFS是允许主机之间共享文件系统的技术。相关命令:format mkfs fsck mount umount df / bdf fuser exportfs3.2. 目录和文件在Unix文件系统中,可使用的文件类型有:l 普通文件l 目录文件l 设备文件l 链接文件l 隐形文件UNIX系统中的每一事物都是一个文件,包括: 普通文件 文本,邮件信息,数据,图片,程序源代码程序 可执行的程序,例如 ksh,who,date,man,和ls 目录: 特殊的文件,记录有所包含的文件和目录的名字和文件系统中的标识。目录同时也存储了每个条目的inode (i节点号),inode 号标识有文件信息和数据在文件系统中存储的地址。设备: 一种特殊的文件,提供到硬件设备的接口,包括有磁盘,终端,打印机,内存。由于这些文件是作为接口存在的,它们不会存储有任何实际的数据。它们一般都在/dev 目录下,你的计算机的每一个需要联接的硬件设备都会有一个设备文件相对应。设备文件分字符文件和块文件两种,块大小一般是512字节。(BSIZE定义在/usr/include/sys/param.h )链接文件分为硬连接和软连接。硬连接不能跨文件系统,不能用于目录、文件的硬连接数为0时文件才被删除;所有硬连接的权限都相同。软连接slinkfile-origfile,它的权限作不得准。隐形文件其实还是普通的文件,唯一特殊的只是文件名是以小数点打头。用“ls -a”命令列出文件列表时,隐形文件才会显示,其他时候不会显示。注:/dev/null 为编程方便而设的空设备,把输出定向到该设备就是不产生任何输出下图是文件系统内容列表示例:文件类型字段的值和对应含义如下u 普通文件u d 目录 u l 链接文件(软连接) u n 网络专用文件 u c 字符设备文件(终端,打印机) u b 块设备文件(磁盘) u p 命名的管道(一种内部过程通信通道)- r w x r- x r- x:这是该文件的权限位。如果除去最前面的横杠,这里一共是9个字符,他们分别对应9个权限位。通过这些权限位,可以设定用户对文件的访问权限。这9个字符可以分为三组:r w x:文件属主权限这是前面三位r- x:同组用户权限这是中间三位r- x:其他用户权限这是最后三位目录的读权限位意味着可以列出其中的内容。写权限位意味着可以在该目录中创建文件,如果不希望其他用户在你的目录中创建文件,可以取消相应的写权限位。执行权限位则意味着搜索和访问该目录。如果该目录中有一个执行位置位的脚本或程序,只要用户知道它的路径和文件名,仍然可以执行它。用户不能够进入该目录并不妨碍他的执行。目录的权限将会覆盖该目录中文件的权限。例如,如果目录d o c s具有如下的权限:而其中的文件p a y的权限为:那么a d m i n组的用户将无法编辑该文件,因为它所属的目录不具有这样的权限。该文件对任何用户都可读,但由于它所在的目录并未给a d m i n组的用户赋予执行权限,所以该组的用户都将无法访问该目录,他们将会得到“访问受限”的错误消息。相关命令:ls cd pwd mkdir rmdir touch rm vi find grep cat more cp mv ln mknod tar compress chmod umask4. UNIX帐户用户名称和ID组的名称和ID用户目录默认使用的SHELL注:用户ID0的用户就是管理员5. UNIX命令5.1.1. ln -s sourcefile targetfile创建链接,-s 表示创建符号链接5.1.2. touch -acm -r ref_file | -t time file .改变文件的访问或修改时间。-a 访问,-m 修改,-c 不创建新文件5.1.3. *findfind / -name a.tar 2 /dev/nullfind . -size +255cfind . -size -7c find . -mtime -5 -exec ls -l ;ls -l $(find . -name jiang23)ls -l find . -name jiang235.2. 进程命令5.2.1. * ps显示进程查占内存多的进程(RSS 是实际内存,单位K)ps -ef | grep ps aux|head -n1;ps aux|sort -rn +5|more 5.2.2. sleepsleep 秒数;等待指定的秒数。5.2.3. waitwait PID;不带参数,等待用户进程全部执行完毕5.2.4. * kill不带消息,默认传递“TERM”消息,杀死进程;带消息,就传递消息给进程。kill -l; 列出可用消息选项。常用的有:STOP(暂停)、CONT(继续)、HUP(挂起)、TERM(终止)、KILL(强制终止)。可使用序号代替消息名,如KILL序号是 9, HUP是 1。kill -SIG PID %JOB; %JOB:如”%vi t .txt”,将杀死所有vi命令产生的进程,不单单”%vi t .txt”。PID=0 : 表示终止组ID与kill命令组ID相等的所有进程PID=1: 终止有效用户ID与kill命令进程用户ID相等的进程PIDn:取绝对值5.2.5. nice改变进程的优先级。例:nice -n16 find . -name *.c -print& “-n16”中的16表示优先级,范围-2020,值越小,优先级越高。5.2.6. bg / CtrlZ把当前作业推到后台,命令后带上“&”符合效果相同5.2.7. fg把作业拉到前台。例:fg %工作号;fg %?.job(”表示后继字符有特殊含义)5.2.8. jobs -l作业列表5.2.9. *nohup nohup使用户运行一条命令,即使用户注销退出也照样运行。经常和&符合连用。5.2.10. * aliasalias yy=ps -ef|grep yqalias l=ls -al5.3. 系统命令5.3.1. 集成命令AIX:smittyHP-UX:samSUN: admintoolSCO:scoadmin5.3.2. mountmount -a fnv -t type ; 挂接/etc/fstab文件中的所有挂接。若有type参数,则挂接/etc/fstab文件中的所有同类挂接mount -fnrv -t type -o options filesystem directory;-f : 假造/etc/mtab文件。但不真正挂接任何系统-n: 挂接文件系统,但不修改/etc/mtab文件-r: 以只读方式挂接-v: 显示挂接结果-t: 挂接文件系统的类型。类型有:dos nfs, rfs, lo, hsfs, tmpumount -a v ;解挂umount -v filesystem |directory .5.3.3. pkgadd -d . /GNUgccsunOS sparc 安装已编译好的GNUgcc编译软件。./GNUgcc是目录要删除用:pkgrm GNUgcc5.3.4. sarsar -A 5 2; 显示系统资源的占用情况。5表示每隔5秒,2表示2次。sar; 等同于 sar f /var/adm/sa/sa31 ; sa31不是固定的,今天12号就是sa12。5.3.5. vmstat 显示系统资源的占用情况5.3.6. shutdown关闭系统,类似的命令有 halt, reboot5.3.7. ulimit ulimit a 显示系统的限制参数5.4. 网络命令5.4.1. *ping5.4.2. traceroute5.4.3. *查看IPifconfig anetstat -ni5.4.4. 路由命令显示路由 netstat -nr路由修改 route5.4.5. 远处执行rcp rsh rlogin5.4.6. *telnet5.4.7. *ftpftp中常用命令:ascii:将传输模式设为 ascii 模式。通常用於传送文字档。binary:将传输模式设为 binary 模式,通常用於传送执行档,压缩档与影像档等。cd remote-directory:将 remote host(远方)上的工作目录改变。lcd directory :更改 local host (本地)的工作目录。ls remote-directory local-file :列出 remote host 上的档案。get remote-file local-file :取得远方的档案。mget remote-files :可使用通用字元一次取得多个档案。put local-file remote-file: 将 local host 的档案送到 remote host。mput local-files :可使用通用字元一次将多个档案放到 remote host 上。help command : 线上辅助指令。mkdir directory-name :在 remote host 造一个目录。prompt 更改交谈模式,若为 on 则在 mput 与 mget 时每作一个档案之传输时均会询问。quit/bye 离开ftp 配置文件”.netrc” ,参数 -i -n 5.5. 其他命令5.5.1. 计算器 bc5.5.2. *日期 date显示日历的命令是cal5.5.3. *特殊符号管道符:| 标准输入输出: 和 和 和 2 和 2 和 &n 和 a.tar.Zcompress -d a.tar.Z = uncompress a.tar.Z5.5.12. crontabcron是系统主要的调度进程,可以在无需人工干预的情况下运行作业。crontab的命令允许用户提交、编辑或删除相应的作业。每一个用户都可以有一个crontab文件来保存调度信息。可以使用它运行任意一个s h e l l脚本或某个命令,每小时运行一次,或一周三次,这完全取决于你。每一个用户都可以有自己的crontab文件,但在一个较大的系统中,系统管理员一般会禁止这些文件,而只在整个系统保留一个这样的文件。系统管理员是通过c r o n . d e n y和c r o n . a l l o w这两个文件来禁止或允许用户拥有自己的crontab文件。下面是c r o n t a b的格式:(其中表示空格)分时日月星期要运行的命令在这些域中,可以用横杠-来表示一个时间范围,例如你希望星期一至星期五运行某个作业,那么可以在星期域使用1 - 5来表示。还可以在这些域中使用逗号“,”,例如你希望星期一和星期四运行某个作业,只需要使用1 , 4来表示。可以用星号*来表示连续的时间段。如果你对某个表示时间的域没有特别的限定,也应该在该域填入*。该文件的每一个条目必须含有5个时间域,而且每个域之间要用空格分隔。该文件中所有的注释行要在行首用#来表示。例子:* * 6,0 /bin/find -name core -exec rm ;c r o n t a b命令的一般形式为:crontab -l|-r|-v|-e|File 中:-e 编辑c r o n t a b文件。-l 列出c r o n t a b文件中的内容。-r 删除c r o n t a b文件。编辑crontab的工具有变量EDITOR指定,需要重定义的话语句如下:EDITOR=vi; export EDITOR5.6. *vi 命令vi 命令的状态模式5.6.1. 进入vi$vi hello.c $view hello.c进入vi;view为只读方式打开文件。$vi +5 test.c ;处于第5行$vi + hello.c; 处于最后一行$vi +/int hello.c ;处于有”int “的行$vi -r hello.c ;上回编辑时系统崩溃,没来得及存盘时用 5.6.2. Redo .小数点“.” 表示重复前一命令,结果与当前光标位置有关5.6.3. Undo字符“u” 取消上一命令。5.6.4. 显示信息Ctrlg显示文件名,行数,当前行myfile.txt Modified line 2 of 3 -66%- 5.6.5. 移动光标h 左j下k上 l右nG :n 到第n行行首,n是一个数字,不带n到文件末。w 下一词头b 上一词头0 行首(是数字0) 第一个非空白字符$ 行尾(句首) 下一句首段首 下一段首Ctrl-u 前滚1/2屏Ctrl-d 后滚1/2屏Ctrl-f 前滚一屏Ctrl-b 后滚一屏H 屏首M 屏中L 屏尾5.6.6. 删除文本(dw dd x X 前可加数字,表示要删除对象的数目):n,md n,m是数字,表示删第nm行dd 删当前行dw 删当前词x 删当前字符X 删前一个字符d$ D 删至行末d 删至行首d0 d( d) d d dH dM dL dw db (”d”可和光标移动键配合使用 )5.6.7. 编辑命令i 在光标前插入文本I 在行首插入文本a 在光标后插入文本A 在行末插入文本o 在当前行下插入一行O 在当前行上插入一行r 替换当前字符R 替换字符,直到按ESC键退出编辑状态 大小写转换5.6.8. 复制/粘贴:k , j m h 或 kmh 将kj行移至h行下,k j h是数字,m 是命令:k , j t h 或 kth 将kj行复制到h行下,co命令也是复制Y 或 nY 当前行或当前行起n行复制到剪贴板p 剪贴板内容复制到当前行下P 剪贴板内容复制到当前行上n”kY 或 “knyy 当前行起n行的内容复制到名为k的剪切板中,k可为单个字母或数字“knyw当前词起n个词的内容复制到名为k的剪切板中“knyl当前字符起n个字符的内容复制到名为k的剪切板中“kp 把名为k的剪切板的内容粘贴至下一行5.6.9. 寻找/替换/ 向前查找? 向后查找s 替换特殊字符:匹配串应位于行首$匹配串应位于行尾.可表示任意单个字符表示其前面字符可出现任意多次(含0次) 指定范围,如 a-z,用 表示不在此范围例:/.*$表示从行首”开始,匹配任意字符”.”,任意多次”*”,直到行末”$”:n,m s/old_str/new_str/gc 在nm行间,用新串替换旧串,”/g”表示全文匹配, 否则每行只替换第一个旧字符串;”/c”表示替换钱提示,输入”y”替换。 :1,$s/HA322/PT359/g把所有的字串”HA322”替换为”PT359”,替换前不提示。 ”1,$”表示从第一行到最后一行:g/old_str/ s /new_str/g将文件中所有的旧串替换成新串:S/ old_str/new_str/g将当前行中所有的旧串替换成新串(sun上不行)5.6.10. 打开/保存:n切换到下一个文件:rew从下一个文件开始从新编辑:rew!:e 打开文件:r 文件名把文件读入,放光标下一行:1,5w 文件名把15行写入新文件中:1,5w! 文件名把15行写入文件中,不指定行数,即全文写入,如:”w!”:x存盘退出,不管是否已作修改:q!强行退出,不管是否已作修改:wq存盘退出:q退出,若已作改动,则无法退出5.6.11. 执行 Shell命令:! 命令执行命令,如 :!data:r ! 命令把Shell命令的输出作为vi的输入:2,5w! cat把vi的输出作为Shell命令的输入:!sh进入子Shell系统,用exit命令退出5.6.12. 设置/显示set设置环境参数Ctrl-g显示文件名、状态、当前行、总行数、当前行与总行数之比Ctrl-l重画屏幕:nu显示当前行号、行内容all显示所有选项设置情况ignorecase / noignorecase是否区分大小写number / nonumber是否显示行号wrapscan / nowrapscan搜索至文件头或尾时是否不再回绕nomagic / magic消除搜索时”* . $ “等字符具有的特殊意义,引用它们不需“”term设置终端类型list / nolist显示制表位(Ctrl+I)和行尾标志($)report=1显示由面向行的命令修改过的行数,默认值为1terse / noterse只显示简短的警告信息warn /nowarn是否显示告警mesg允许其他用户用write命令把信息写到终端上永久性设置方法一:使用环境变量EXINIT,该变量是 ex 初始化用的EXINIT=”set number nowarn terse”$export $EXINIT方法二:配置 /.exrc 文件,因为 vi 是从 ex 发展来的,所以它的配置脚本名为.exrc 。实例:set numberset nowrapscanmap a/abbr chp Chinese People5.6.13. 宏功能map:map :是某个键或组合键;:vi 命令列表:unmap 取消宏功能例 :map p :w M :!spell% M A;Ctrl+p(p)按下时,vi 执行 :w 命令,把文件写盘(M表示回车),然后执行Shell命令 spell %(表示当前文件),之后再执行 A命令,在行尾插入 分号(;),( 表示ESC键)5.6.14. 缩写 abbr:abbr th Tsinghua University表示用 th 这个词代替 Tsinghua University 这个字符串。若 th 不是作为一个单词出现,若输入 the ,就不进行替换。在最后行方式中也按此规则替换6. 正则表达式6.1. 字符匹配正则表达式的关键之处在于确定你要搜索匹配的东西,如果没有这一概念,Res将毫无用处。每一个表达式都包含需要查找的指令,如表A所示。Table A: Character-matching regular expressions操作解释例子结果.Match any one charactergrep .ord sample.txtWill match “ford”, “lord”, “2ord”, etc. in the file sample.txt. Match any one character listed between the bracketsgrep cngord sample.txtWill match only “cord”, “nord”, and “gord” Match any one character not listed between the bracketsgrep cnord sample.txtWill match “lord”, “2ord”, etc. but not “cord” or “nord”grep a-zA-Zord sample.txtWill match “aord”, “bord”, “Aord”, “Bord”, etc.grep 0-9ord sample.txtWill match “Aord”, “aord”, etc. but not “2ord”, etc.6.2. 重复操作符重复操作符,或数量词,都描述了查找一个特定字符的次数。它们常被用于字符匹配语法以查找多行的字符,可参见表B。Table B: Regular expression repetition operators操作解释例子结果?Match any character one time, if it existsegrep “?erd” sample.txtWill match “berd”, “herd”, etc. and “erd”*Match declared element multiple times, if it existsegrep “n.*rd” sample.txtWill match “nerd”, “nrd”, “neard”, etc.+Match declared element one or more timesegrep “n+erd” sample.txtWill match “nerd”, “nnerd”, etc., but not “erd”nMatch declared element exactly n timesegrep “a-z2erd” sample.txtWill match “cherd”, “blerd”, etc. but not “nerd”, “erd”, “buzzerd”, etc.n,Match declared element at least n timesegrep “.2,erd” sample.txtWill match “cherd” and “buzzerd”, but not “nerd”n,NMatch declared element at least n times, but not more than N timesegrep “ne1,2rd” sample.txtWill match “nerd” and “neerd”6.3. 锚锚是指它所要匹配的格式,如图C所示。使用它能方便你查找通用字符的合并。例如,我用vi行编辑器命令:s来代表substitute,这一命令的基本语法是:s/pattern_to_match/pattern_to_substitute/Table C: Regular expression anchors操作解释例子结果Match at the beginning of a lines/blah /Inserts “blah “ at the beginning of the line$Match at the end of a lines/$/ blah/Inserts “ blah” at the end of the lineMatch at the beginning of a words/blah/Inserts “blah” at the beginning of the wordegrep “Match at the end of a words/blah/Inserts “blah” at the end of the wordegrep “blah” sample.txtMatches “soupblah”, etc.bMatch at the beginning or end of a wordegrep “bblah” sample.txtMatches “blahcake” and “countblah”BMatch in the middle of a wordegrep “Bblah” sample.txtMatches “sublahper”, etc.7. SHELLShell 是一个交互的命令解释器。命令是在SHELL 提示符下键入,shell 会遵照。执行键入的命令。用户通过shell 与计算机交互。shell 从键盘获得用户键入的命令,然后将命令翻译为内核能够理解的格式。然后系统就会执行这个命令。注意shell 与内核是分离的两部分。如果你不喜欢当前shell 提供的特性,你能很容易地用另一种shell 代替当前的shell。一些shell 是命令行方式,一些提供菜单界面。UNIX 系统支持的普通的shell都包括一个命令解释器和一个可编程的接口。有四个最通用的shell,分别是:l Bourne shell - 由AT&T 提供的最原始的shell,由贝尔实验室的Stephen Bourne 开发。可提供命令的解释,支持可编程接口,提供诸如变量定义,变量替代,变量与文件测试,分支执行与循环执行等功能。l C Shell (/usr/bin/csh)-C Shell 是在California Berkeley 大学的Bill Joy 开发,一般存在于BSD 系统中,于是被称为California shell,简写名称为C Shell。它被认为是Bourne Shell 的一个改进版本。因为它提供拉交互的特征例如命令堆栈(允许简单地调用和编辑以前输入的命令,)别名(提供对已有命令取个人的别名)l Korn Shell(/usr/bin/ksh)- 贝尔实验室最新的开发成果,由David Korn 开发成功。它被认为是是一种增强型的Bourne Shell,因为它提供对简单可编程的Bourne Shell 界面的支持,同时提供C Shell 的简便交互的特征。它的代码也被优化来提供一种更快,更高效的shell。l POSIX Shell: POSIX 是一种命令解释器和命令编程语言,这种shell 同Korn Shell 在许多方面都很相似,它提供历史机制,支持工作控制,还提供许多其他有用的特性l BASHl TCSH“$” 符是Bourne Shell(/usr/old/bin/sh)、korn Shell(/usr/bin/ksh)、BASH和POSIX Shell(/usr/bin/sh)的标准提示符,“%”符通常表示这是C Shell(/usr/bin/csh) 和TCSH。“#”提示符一般是为系统管理员保留的。7.1. 登录流程当一个用户登录系统的时候,会在屏幕上看见login: 提示符。当你键入你的用户名,系统会读取你的用户名,并且提示你输入密码。当你键入你的密码,系统会检查你的用户名和密码(使用/etc/passwd文件)。如果你键入的用户名和密码是正确的,系统会让你进入到你的home目录,并且系统会为你启动shell。在这个过程中,系统做的事情如下:a. getttyb. 显示/etc/issue 中的内容 c. 出现登录提示符 d. 运行登录过程1. 确认用户名和密码的正确性。 2. 将用户放在home目录下 3. 运行用户的shell e. 启动shell 1. 执行/etc/profile文件(POSIX,Bourne,和Korn shell) 或者2. 是/etc/csh.login(C shell) 3. 执行用户home目录下的.profile 或者.login文件 4. 执行用户home目录下的.kshrc文件(POSIX和Korn shell)。5. 如果用户创建了这个文 或是在ENV变量中设置.kshrc6. 在.profile文件中。 7. .出现shell提示符 8. 一旦shell开始运行,他会从系统命令文件/etc/profile中读取命令执行.用户无论在什么时候登录和启动一个shell,这个文件都会被读取,然后shell会读取你自己的.profile文件。这两个shell脚本被用来定制一个用户的环境。/etc/profile中设置了系统中每个用户的基本的环境。而.profile文件更多的是定制你特殊的需要。因为每一个人都会使用/etc/profile文件,所以系统管理员有责任维护这个文件。 当这两个程序都完成后就会出现shell提示符。7.2. 变量7.2.1. 环境变量环境变量用于所
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新解读《HG-T 3075-2003胶粘剂产品包装、标志、运输和贮存的规定》新解读
- 新解读《CB-T 177 - 1999船用夹布胶管接头》新解读
- 土方路堤填挖方施工方案
- 地质超前预测及预报方法
- 2024年L-乳酸资金申请报告代可行性研究报告
- 商场家电售后管理制度
- 初中英语八年级下册统编教案 uunit3
- 从军精彩活动方案
- 仓储质量活动方案
- 仓库激励活动方案
- 新部编版历史八下全册总复习课件
- 运用PDCA提高影像诊断与手术符合率演示文稿
- 花道-插花技艺养成智慧树知到答案章节测试2023年云南林业职业技术学院
- 国际天然气长期合同价格复议争议仲裁与中国对策,国际商法论文
- 2022年重庆市中考地理试卷真题及答案详解(初中学业水平考试)
- 当前国际形势与两岸关系课件
- 神经外科术后并发症观察及护理课件整理
- 高一英语-必修三Unit-4-Reading-for-writing课件
- 药店手绘POP基础
- 脑卒中患者健康管理与随访档案模板
- 地铁项目安全风险评估报告2019
评论
0/150
提交评论