UNIX操作系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
UNIX操作系统
目录
第一篇基础篇
第一章UNIX操作系统概述 (1)
1.1 UNIX操作系统简介 (1)
一、UNIX特点 (1)
二、UNIX流派及标准 (2)
1.2 UNIX系统组成 (3)
1.3 与UNIX有关的几个名词 (4)
第二章UNIX常用操作 (5)
2.1 启动终端 (5)
2.2 登录 (5)
2.3 UNIX命令 (5)
一、UNIX命令格式 (5)
二、特殊按键 (7)
三、UNIX常用简单命令 (7)
四、UNIX用户间简单通讯命令 (8)
2.4 注销(退出UNIX系统) (10)
第三章UNIX文件系统 (10)
3.1 UNIX文件系统分类 (10)
3.2 UNIX文件类型 (10)
3.3 UNIX树型目录结构 (11)
3.4 UNIX文件名称 (12)
3.5 UNIX文件存取权限 (12)
3.6 UNIX重定向与管道 (15)
3.7 UNIX文件系统常用命令 (15)
第四章UNIX文件系统常用工具和实用程序 (17)
4.1 vi编辑器的最基本用法 (17)
4.2 利用find命令查找文件 (18)
4.3 grep命令基本用法 (19)
4.4 利用cmp命令比较文件 (20)
4.5 文件的备份和恢复实用程序 (20)
一、tar命令 (20)
二、cpio命令 (21)
4.6 文件压缩和解压程序 (22)
一、compress 压缩命令 (22)
二、pack 压缩文件 (22)
三、gzip 压缩文件 (23)
四、pkzip压缩文件 (23)
第五章UNIX简单维护与管理 (23)
5.1 选择init状态 (23)
5.2 UNIX关机 (25)
5.3 修改系统时间 (25)
5.5 如何查看磁盘使用情况 (26)
5.6 掉电故障及处理 (26)
第六章网络通信 (26)
6.1 TCP/IP协议 (26)
6.2 查看网上用户信息 (27)
6.3 使用mail 发送和接收电子邮件 (27)
一、发送电子邮件 (27)
二、阅读电子邮件 (27)
6.4 在网络上登录和拷贝 (28)
一、telnet (28)
二、ftp (29)
第一章UNIX启动和定时管理 (32)
1.1 UNIX启动过程 (32)
1.2 UNIX用户的登录过程 (32)
1.3 daemon进程 (33)
1.4 UNIX系统的定时器 (33)
第二章UNIX用户管理 (34)
2.1用户管理 (35)
一、增加新用户 (35)
二、删除用户 (35)
一、增加新用户组 (35)
二、删除用户组 (36)
2.2 采用另外一种方法增加和删除用户 (36)
一、增加用户 (36)
二、删除用户 (37)
第三章存储设备的使用 (38)
3.1磁带的使用 (38)
3.4 mount和umount命令 (41)
一、mount命令 (41)
二、umount命令 (42)
3.5 CD-ROM的使用 (42)
一、CD-ROM设备的创建 (42)
二、CD-ROM的挂接 (43)
第四章网络、主机和路由参数设置 (43)
4.1 /etc/networks文件 (43)
4.2 /etc/hosts文件 (43)
4.3 /etc/gateways文件 (44)
4.4 设置步骤 (45)
4.5 测试 (45)
第一部分上机环境 (45)
1.1 UNIX主机环境 (45)
1.2 工作站环境 (46)
第二部分在工作站上登录UNIX (46)
2.2 NetTerm的使用 (46)
第三部分UNIX常用命令的使用 (47)
3.1 常用命令之一 (47)
3.2 常用命令之二(选做) (51)
3.3 常用命令之三 (51)
第四部分ftp的使用 (53)
4.1 ftp的安装 (53)
4.2 使用ftp拷贝文件 (53)
附录A UNIX命令速查表 (54)
第一篇基础篇
第一章UNIX操作系统概述
1.1 UNIX操作系统简介
Unix操作系统自1969年问世以来,至今已有20年的历史,它的第一版于1969年在Bell实验室产生,1975年对外公布,1976年以后在Bell实验室外广泛使用。
目前这个操作系统已经广泛移植在微型计算机,小型计算机,工作站,大型计算机和巨型计算机上,已成为全球应用最广、影响最大的操作系统;Unix提供有一套十分丰富的软件工具和一组强有力的实用程序,有一个功能强大的Shell命令解释程序,为用户提供了方便的命令界面;Unix有极大的通用性、灵活性、可移植性和可扩充性。
一、UNIX特点
UNIX操作系统是一种非常流行的多任务、多用户操作系统,应用非常广泛。
UNIX的主要特点为:
多任务(Multi-tasking)UNIX是一个多任务操作系统,在它内部允许有多个任务同时运行。
而DOS操作系统是单任务的操作系统,不能同时运行多个任务。
早期的UNIX操作系统的多任务是靠分时(time sharing)机构实现的,现在有些UNIX除了具有分时机制外,还加入了实时(real-time)多任务能力,用于象实时控制、数据采集等实时性要求较高的场合。
多用户(Multi-users)UNIX又是一个多用户操作系统,它允许多个用户同时使用。
在UNIX 中,每位用户运行自己的或公用的程序,好象拥有一台单独的机器。
DOS操作系统是单用户的操作系统,只允许一个用户使用。
并行处理能力UNIX支持多处理器系统,允许多个处理器协调并行运行。
管道UNIX允许一个程序的输出作为另外一个程序输入,多个程序串起来看起来好象一条管道一样。
通过各个简单任务的组合,就可以完成更大更复杂的任务,并极大提高了操作的方便性。
后来DOS操作系统也借鉴并提供了这种机制。
功能强大的Shell UNIX的命令解释器由Shell实现。
UNIX提供了三种功能强大的Shell,每种Shell本身就是一种解释型高级语言,通过用户编程就可创造无数命令,使用方便。
安全保护机制UNIX提供了非常强大的安全保护机制,防止系统及其数据未经许可而被非法访问。
稳定性好在目前使用的操作系统中,UNIX是比较稳定的。
UNIX具有非常强大的错误处
理能力,保护系统的正常运行。
用户界面传统的UNIX用户界面采用命令行方式,命令较难记忆,很难普及到非计算机专业人员。
这也是长期以来UNIX遭受指责的主要原因,但现在大多数的UNIX都加入的图形界面,可操作性大大增强。
强大的网络支持UNIX具有很强的联网功能,目前流行的TCP/IP协议就是UNIX的缺省网络协议,正是因为UNIX和TCP/IP的完美结合,促进了UNIX、TCP/IP以及Internet的推广和普及。
目前UNIX一直是Internet上各种服务器的首选操作系统。
移植性好UNIX操作系统的源代码绝大部分用C语言写成,非常便于移植到其它计算机上,再加上初期UNIX组织对UNIX源代码宽松的管理政策,促进了UNIX的发展和普及。
很早以前,就应用到几乎所有16位及以上的计算机上,包括微机、工作站、服务器、小型机、多处理机和大型机等等。
二、UNIX流派及标准
UNIX和其它操作系统不同,UNIX的生产厂家很多,由于历史的原因,不同厂家生产的UNIX有一些细微区别,这就产生了不同的UNIX流派。
传统上认为包含了AT&T源代码的产品是真正的UNIX,而没有包含AT&T源代码的称为近似系统。
下面是常见的不同厂家生产的UNIX产品:
UNIX产品计算机生产厂家
SCO UNIX PC兼容机SCO公司
XENIX PC兼容机微软, SCO
Digital Unix Dec Alpha机Digital公司
Solaris Sun工作站Sun公司
AIX IBM机IBM公司
一些组织一直在对UNIX进行标准化工作,形成了一系列UNIX标准,下面是两个传统公认的UNIX标准版本:
UNIX System V 这原是AT&T公司制定的标准版本,以后成为事实上的工业标准,传统上被认为是最正宗的UNIX。
目前UNIX System V的版本有SVR 3.2、SVR 4.0、SVR 4.2 (SVR的全称是System V Release)。
SunOS 5.x 操作系统是Sun公司所推出的Solaris2.x 软件系统下的主要成分,Solaris 2.x可运行于SPARC和intel硬件平台,是一个支持对称式多处理机的UNIX系统环境。
我司的HDB HA服务器即为此环境。
BSD UNIX这是加州大学Burkeley分校发表的UNIX版本(称为BSD UNIX ,即Berkeley Software Distribution Version of UNIX)。
目前流行的BSD UNIX版本有BSD 4.2、BSD 4.3和BSD 4.4版。
Solaris的早期版本采用的就是BSD UNIX。
UNIX SRV4里也集中了许多BSD的特性。
SVR4.2把网络和图形作为UNIX的一个标准部件。
SVR4.2支持除PC机以外的所有平台,PC机的UNIX版本将用Unixware。
1.2 UNIX系统组成
UNIX操作系统结构由三大部分组成:
(1) Kernel(内核)
(2) Shell(外壳)
(3) 工具及应用程序
工具及应用程序
Shell
Kernel
硬件
UNIX Kernel(UNIX内核)是UNIX操作系统的核心,指挥调度UNIX机器的运行,直接控制计算机的资源,保护用户程序不受错综复杂的硬件事件细节的影响。
UNIX Shell(UNIX外壳)是一个UNIX的特殊程序,是UNIX内核和用户的接口,是
一般系统缺省为Bourne Shell, 本文以此Shell为例。
要想将当前Shell改为其它Shell,只需在操作系统提示符下键入相应的Shell命令即可。
如在其它Shell下键输入命令:
ksh
就进入了K Shell。
工具及应用程序UNIX提供了很多工具软件和应用程序供用户使用,如vi编辑器、文件查找、备份等等。
1.3 与UNIX有关的几个名词
终端(Terminal)终端是用户和计算机进行实时交互的接口设备。
终端一般由显示器、键盘和终端控制器组成,有的还带有鼠标。
显示器和键盘与终端控制器相连,终端控制器通过通用端口(如串口)和计算机主机相连。
用户通过终端和计算机交流。
一台UNIX 主机可以连多个终端。
终端分为两类:字符终端和图形终端。
仿真终端在某计算机上运行某一特定程序,把计算机当作另一台计算机的终端使用。
目前仿真终端与UNIX主机的连接方式主要有网络连接和串口连接。
控制台(Console)这是一种特殊的终端,由显示器、键盘(和鼠标)组成,分别连到主机的专用接口(监视器接口、键盘接口、鼠标接口)上。
一般一台主机只能接一个控制台,控制台可以完成普通终端不能完成的工作:非常重要的信息(如严重的错误信息)只能在控制台上显示,有些特殊的任务(如执行修复工作)也只能在控制台上完成。
除了实现以上特殊功能外,控制台还可以象其它终端那样工作。
用户名(User)UNIX是多用户操作系统,它允许多个用户同时使用。
每个用户拥有用户名、登录口令以及操作特权。
用户每次使用UNIX时必须先登录:输入用户名和口令。
一般用户的UNIX操作系统提示符一般为”$”。
用户组(Group)若干个用户可以组成一组,同组内的用户可以共享信息。
root用户UNIX的超级用户,拥有其他用户没有的特权。
root用户的UNIX操作系统提示符一般为”#”。
进程(Process)是正在执行的程序。
UNIX允许多个进程同时存在,每个进程都有唯一代号称为进程标识符(pid --- process id)。
前台进程(Foreground process)可以和用户直接进行人机交互的进程。
前台进程序可以接收键盘输入并将结果显示在显示器上。
缺省状态下用户启动的UNIX程序运行在前台。
后台进程(Background process)不直接和用户进行交互的进程。
用户一般是感觉不到后台进程程序的运行。
UNIX有很多系统进程在后台执行。
设备(Device)或称设备文件,代表某个硬件,如磁盘、软盘、串口。
UNIX对硬件的存取操作都是通过设备文件来完成的。
设备文件放在/dev目录下,如/dev/hd0表示第一个软盘驱动器。
原始设备(Raw device)也称为裸设备,没有经过加工的设备文件。
原始设备文件名以r开头,如/dev/rhd0表示第一个软盘驱动器原始设备。
第二章UNIX常用操作
2.1 启动终端
对于专用终端,当打开终端电源后就会自动出现登录信息。
对于网络连接的仿真终端,要先打开计算机,再运行TCP/IP协议驱动程序和终端仿真程序即可。
2.2 登录
当终端与UNIX系统连通后,在终端上会出现”login:”提示符。
在”login:”提示符下输入用户名,出现”password:”后再输入口令,如以omc用户登录的过程为:
Login: omc
Password:
输入的口令并不显示出来,输入完口令后,一般会出现上次的登录信息,以及UNIX的版本号。
当出现TERM一行时,要求输入所使用的终端类型。
最后出现UNIX Shell提示符,等待用户输入命令。
2.3 UNIX命令
一、UNIX命令格式
1、UNIX命令提示符
在命令行下,操作系统会显示一提示符,提示用户在此提示符后可以输入一行命令。
不同的Shell有不同的缺省提示符:
B Shell和K Shell的缺省提示符为"$";
C Shell的缺省提示符为"%";
但当以root用户登录时,系统提示符统一缺省为"#"。
用户可以更改自己的缺省Shell和提示符。
2、基本命令格式
在Shell提示符下,就可以输入UNIX命令。
UNIX命令的基本格式如下:
command 参数1 参数2 ... 参数n
UNIX命令由一个命令(command)和零到多个参数构成,命令和参数之间,以及参数与参数之间用空格隔开。
UNIX的命令格式和DOS的命令格式相似,但UNIX的命令区分大小写,且命令和参数之间必须隔开。
如:对DOS来说是以下四条命令是相同的:
cd\tmp
cd \tmp
CD \tmp
cd \Tmp
对UNIX操作系统来说,改变目录的命令也是cd命令,以下是正确的UNIX cd命令:
cd /tmp
cd /Tmp
但tmp和Tmp是两个不同的目录。
以下两条命令:
cd/tmp
CD /tmp
已经不是cd命令了。
3、在一行中运行多个命令
可以在一行中输入多个命令,命令间用“;”分开,如:
mkdir tmp ; cp file1 tmp/file2 ; ls -l tmp
UNIX会顺序执行以上三条命令。
4、在后台运行程序
要让程序在后台执行,只需在命令行的最后加上“&”符号。
[例1] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件。
执行命令和立即显示的内容如下:
$ find . -name abc -print&
10722
$
...
10722表示进程号(PID)。
当find命令在后台执行完后,会显示结果。
当在后台运行命令时,最好将其输出重定向输出到一个文件中去,以便以后检查。
[例2] 在后台运行find命令,在当前目录及其子目路下查找文件名为abc的文件并将结果存到myfind文件中。
执行命令如下:
$ find . -name abc -print>myfind&
在运行后台程序的同时可以继续输入命令。
5、nohup命令
当终端退出后,由该终端启动的后台程序自动退出。
要想终端退出后程序不停止运行,则要用nohup命令启动后台程序。
如对于例2的命令加入nohup后变为:
$ nohup find . -name abc -print>myfind& 二、特殊按键
在UNIX命令操作中有一些特殊键,列表如下:
三、UNIX常用简单命令
下表列出了几个简单的UNIX命令:
1、man命令- 查看帮助信息
举例:
查看man的使用方法:man
查看finger命令的帮助信息: man finger
2、date命令- 显示、修改日期和时间
显示时间的命令如下:
date
显示如下:
Mon Aug 17 13:43:14 NST 1998
表示NST标准时间,1998年8月17日13:43:14,星期一。
3、cal命令- 显示日历
举例:
显示1998年全年日历:cal 1998
显示1998年8月日历:cal 8 1998
4、banner命令- 显示大写大字
举例:在屏幕上用大字显示“HUAWEI”,命令如下
banner "HUAWEI"
5、bc命令- 简单计算器
bc命令可以进行加、减、乘、除、求模、乘方运算,运算符分别为“+”“-”“*”“/”“%”“^”。
bc使用举例如下
bc
以后输入算式即可,如:
1234 * 3 + 2^4
按回车显示结果,以后等待输入其它算式。
按<Ctrl>+d键退出bc。
6、passwd命令- 修改口令
要修改自己的口令,只需运行:
passwd
以后系统会提示输入原来口令,并输入新口令。
7、who命令- 查看正在使用UNIX的用户
用法如下:
who
系统会显示正在使用UNIX的用户名、终端号和登录时间。
要查看使用者自己的信息,运行:who am i
8、finger命令 - 显示用户信息
finger命令比who命令显示的信息量大,功能强。
基本使用方法如下:
显示登录信息:finger
显示smith用户详细信息:f inger smith
9、clear命令 - 清除屏幕
clear
四、UNIX用户间简单通讯命令
UNIX提供许多方式让用户相互通信,它允许你以文本的方式发送及接收信息。
你可以传递信息给其他用户、所有用户、或自己。
信息来源可以是文本文件或直接由键盘输入的内容。
(一)write命令
可使用write 实用程序向已登录的另一个用户发送一条报文,当对方也使用write 命令时,双方之间就建立了通信。
当用户使用write 命令时,就在对方用户终端上显示提示信息。
write 命令的格式如下:
write destination-user [terminal]
其中,destination-user 是你想与之通信的用户注册名,通常使用who 命令查看其注册名。
如果对方在多台终端上登录,可通过用terminal 来控制write 的报文送向指定的终端。
为了建立与其他用户的双向通话,用户和对方每次必须执行write 命令,且必须指定注册名。
一般在使用UNIX 进行通话时,通信双方有一些约定:用“o”表示结束一条报文,“oo”表示结束这次通信,用ctrl-d 退出write 命令。
[例1] UNIX上两用户alex 和jenny 通过write命令通信。
在alex的所在终端上(<CR>表示回车):
$ write alex <CR>
Hi Alex, are you there? o<CR>
Message from Alex (tty11)[Sat Jan 5 15:08]….
Yes Jenny, I’m here. o<CR>
……
Thank you ,Alex, bye! oo<CR>
Ctrl-d
$
该例说明了使用write 命令实现Alex 和Jenny 的通信过程。
首先Jenny 使用前两行向Alex 发送了一条报文,接下来的两行是Alex 发送的报文Jenny 收到了,省略号表示他们的通信继续。
最后,Jenny 用thank you,Alex,bye!oo 告诉Alex没有话要说了,并在下一行开始键入ctrl-d 来退出write 并回到shell。
(二)使用talk双方对话
talk 命令是一个虚拟通信命令,它允许登录双方通过键盘实时对话,其格式如下:
talk user-name [terminal]〈CR〉
注意,使用talk 进行双方对话时,双方使用的机器体系结构必须相同。
当对方给出响应的talk命令后,双方终端上都显示
[connect established]
时,双方可双工通信了。
双方可以以任意的速度从键盘输入,talk 把你的输入一行一行的显示在你和对方的屏幕上。
用<Delete>退出talk 。
(三)使用mesg 拒绝和允许接收报文
mesg 命令允许或拒绝接收由其它终端发来的write 和talk通讯信息。
mesg命令在本地终端运行,其使用格式如下:
mesg [y] [n]〈CR〉
其中,y 表示允许接收,n 表示拒绝接收。
如既不给出y 也不给出n ,则报告现在的许可状态。
例:
[例1] 显示状态:
$mesg <CR>
则命令的执行结果为:
is y
或is n
[例2] 拒绝接收由其它终端发来的write 和talk通讯信息:
$mesg n
$mesg
is n
(四)wall 广播式消息传递
所有登录用户都可收到该消息。
仅超级用户使用该命令。
wall命令有以下几种格式:
# wall
# wall filename
# wall “send a message to all the people。
”
2.4 注销(退出UNIX系统)
在每次使用完后,一定要进行注销,以防他人通过你的帐号进入系统,并保证系统的完整性。
注销过程如下:在UNIX提示符下,运行:
$ exit
或
$ logout
或直接按键:
Ctrl+d。
如果使用的是solaris的CDE,直接用mouse点击exit菜单退出.
由于UNIX操作系统的不同,注销的命令也可能不同。
第三章UNIX文件系统
3.1 UNIX文件系统分类
UNIX操作系统可由多个可以动态安装及拆卸的文件系统组成。
UNIX文件系统主要分为两大类:根文件系统和附加文件系统。
根文件系统(the root file system)每一个UNIX操作系统在其主硬盘上至少含有一个文件系统,它包含构成操作系统的程序和目录,一般由“/”符号来表示。
附加文件系统除根文件系统外的其它文件系统,如/u文件系统,AFS文件系统等。
附加文件系统必须挂(mount)到根文件系统的某个目录下才能使用。
以后如无特别声明,本文都是针对根文件系统来进行说明的。
3.2 UNIX文件类型
在UNIX中文件共分为四种:
1 普通文件(ordinary file),分为: (1) 文本文件(2) 二进制文件
2 目录文件(directory)
3 特殊文件(special file),分为: (1) 块设备文件(2)字符设备文件
4 符号链接文件(symbolic links)
普通文件用于存放程序、数据等,我们绝大部分处理的文件就是这种文件。
UNIX把所
有普通文件处理成字节流,没有规定文件的具体结构。
文件的具体类型由程序的开发者定义,总体上来说一般将普通文件分为文本文件和二进制文件。
文本文件是可以用vi等编辑器能够编辑并可通过显示命令显示的文件;不是文本文件的文件统称为二进制文件。
目录文件用来存放文件的目录。
特殊文件也称设备文件,代表着某种设备,一般放在/dev目录下,如/dev/cd0表示光驱。
特殊文件分为块设备文件和字符设备文件,块设备文件以区块为输入输出单元,如磁盘;字符设备文件是以字符作为输入输出单元,如串口。
符号连接文件包含一指针,这指针会指向文件的所在。
文件类型标识在用”ls -l”命令显示文件目录时的用下列符号表示不同的文件类型:- 普通文件
d 目录文件
b 块设备文件
c 字符设备文件
l 符号链接文件
举例:
$ ls –l
-rwxr-xr-- 2 wjm newservice 321 Oct 17 09:33 file1
drwxr-xr-x 2 wjm newservice 96 Oct 17 09:40 dir1
其中,第一列的“-”表示file1是普通文件,“d”表示dir1为目录文件。
3.3 UNIX树型目录结构
UNIX操作系统采用树型带勾连的目录结构,如下图所示。
在这种结构中,一个文件的名字是由根目录到该文件的路径上的所有节点名按顺序构成的,相互之间用“/”分开。
如文件prog的全路径名为:/usr/smith/prog,根目录用“/”表示。
根文件系统常用目录根文件系统的常用目录举例如下表:
/
bin lib usr dev etc
smith sybase
prog d install
/ 根目录,这是所有目录和文件的起点
/bin 大部分可执行的UNIX命令和共用程序
/dev 设备文件,如/dev/cd0
/etc 系统管理命令和数据文件
/lib C程序库
/usr 存放用户的家目录和用户共用程序或文件
/tmp 临时工作目录,存放一些临时文件
UNIX的目录结构与DOS有些相似,但文件路径的书写方式不同。
任何文件的路径全称都是以“/”开头,名字间用“/”隔开,如/tmp/data/fox;而DOS的文件路径全称以盘符开头,名字间用“\”隔开,如:c:\tmp\data\fox。
家目录UNIX在创建用户名时,一般会创建一个目录专门供该用户使用,这个目录称为该用户的家目录(Home Directory)。
缺省家目录一般放在/usr目录下,目录名与用户名称相同,如/usr/smith。
家目录中有一个文件比较特殊:“.profile”(或“.login”)文件。
当以该家目录的用户名登录UNIX时,会自动执行“.profile”文件。
它有点类似于DOS的AUTOEXEC.BAT文件。
“.profile”是B/K shell的启动文件,而“.login”是C shell的启动文件。
“.profile”文件中常有一行:
PATH=$HOME:$HOME/bin
其中,PATH类似DOS的PATH,而$HOME表示家目录。
3.4 UNIX文件名称
UNIX文件名称
最大长度为255字节;
大小写敏感(file1和File1表示两个不同的文件);
无专用扩展名(UNIX文件名可出现多个小数点,并无特殊含义)。
UNIX特殊文件名
/ 表示根目录
. 表示当前目录
.. 表示当前目录的父目录
.字符串表示隐含文件,如”.profile”文件
文件名通配符
?任一个字符,如”abc?”表示此字符串有4个字符,前三个字
符为abc
*任何字符,如”ab*10”表示以ab开头和以10结尾的名字。
注:与DOS文件通配符*有区别。
3.5 UNIX文件存取权限
一、文件的存取权限
UNIX文件的存取有三种权限:
二、能够存取文件的用户类型
有三种类型的用户可以存取文件:
每种类型的用户都有三种文件存取权限:r、w、x。
三、文件存取权限的显示
可以通过”ls -l”命令显示,如:
$ ls -l file1
显示如下:
-rwxr-xr--2wjm newservice321Oct 17 09:33file1
上行中:
第2-4字符”rwx”表示此文件属主wjm对文件file1的权利为”可读、可写、可执行”;
第5-7字符”r-x” 表示此用户组newservice内的用户对文件file1的权利为:”可读、不可写、可执行”;
第8-10字符”r--” 表示其他用户对文件file1的权利为”可读、不可写、不可执行”
四、文件存取权限的修改
用chmod命令修改文件的存取权限,chmod命令的格式如下:
格式1: chmod symbolic_mode file…
格式2: chmod absolute_mode file…
(一)格式1:符号模式(symbolic_mode), 符号模式的命令格式如下:
chmod [who] op permision file…
who项表示用户类型,它的内容为以下一项或多项:
op项表示动作:
permission项为存取权限,它的内容为以下一项或多项:
举例:
(二)格式2:绝对模式(absolute_mode), 符号模式的命令格式如下:
chmod xyz file…
x、y、z分别是0-7的数字,分别表示属主、用户组、其他人对该文件的存取权限。
x、y、z的取值公式均为:
a*4 + b*2 + c
其中,
a=1分别表示可读,a=0表示不可读;
b=1分别表示可写,b=0表示不可写;
c=1分别表示可执行,c=0表示不可执行;
举例:
五、改变文件属主及文件所在组
改变文件属主的格式如下:
chown 属主名文件名
必须对文件具有write权利才可改变文件的属主。
改变文件所在组的格式如下:
chgrp 组名文件名
必须是文件的属主或supervisor才能改变文件组别的归属。
举例:
chown wjm test1将文件test1的属主改为wjm
chgrp newservice test1 将文件test1的用户组改为newservice
3.6 UNIX重定向与管道
UNIX重定向将文件的标准输出重新定向输出到文件,或将数据文件作为另一程序的标准输入内容。
重定向符号如下:
< 重定向输入
> 重定向输出
>> 重定向输出并追加到尾部
例如:
ls -l > file1 将ls -l命令显示的内容存到file1中,
ls >> file1 将ls 命令显示的内容附加存到file1的尾部
grep abc < file1 将file1的内容作为grep abc命令的输入
其中,">"和">>"为输出重定向符,">"将输出内容存到重定向文件中,若文件存在,则先删除原有内容;">>"将输出内容存到重定向文件的尾部。
UNIX管道将一文件的输出作为另一文件的输入。
管道符号如下:
| 将左边命令的输出,作为右边命令的输入
例如:
ls|more 将ls的输出作为more命令的输入
ps -ef|grep smith ps -ef的输出作为grep smith命令的输入
3.7 UNIX文件系统常用命令
一、pwd命令
pwd命令用来显示当前目录路径,命令如下:
pwd
二、cd命令
cd命令用于改变当前的目录,如:
命令举例说明
cd /usr/smith 改变到/usr/smith目录
cd ../wjm 改变到父目录下的wjm子目录
cd exam1 改变到当前目录下的exam1子目录
cd 改变到家目录
不带参数的cd命令表示进入家目录,这点与DOS有本质区别。
三、rm命令
rm命令可以删除文件及目录,举例如下:
命令举例说明
rm file2 删除当前目录下的文件file2
rm file* 删除当前目录下以file开头的文件rm -r /usr/wjm/exam2 删除目录/usr/wjm/exam2及其内容
四、ls命令
ls命令可以显示目录内容,命令格式如下:
ls -选项文件名
其中的常用选项说明如下:
-l 长列表显示目录内容
-a 显示所有类型文件,包括隐含文件
-d 如果显示内容包含目录名,则只显示目录名字不显示目录内容命令举例如下:
命令举例说明
ls 显示当前目录内容
ls file* 显示除当前目录下以file开头的文件ls -l /usr/wjm/exam2 长列表显示目录/usr/wjm/exam2内容
ls -adl 显示当前目录内容(同时带-l、-d、-a参数)
[注] ”ls -l”命令显示格式如下:
drwxrwxr-x 2 smith group 48 Jan 05 1998 john -rwxr-xr-- 1 wjm newservice 321 Oct 17 09:33 file2
上面每行中:。