unix达内串讲Word文件下载.docx
- 文档编号:17630634
- 上传时间:2022-12-07
- 格式:DOCX
- 页数:18
- 大小:30.08KB
unix达内串讲Word文件下载.docx
《unix达内串讲Word文件下载.docx》由会员分享,可在线阅读,更多相关《unix达内串讲Word文件下载.docx(18页珍藏版)》请在冰豆网上搜索。
使用ctrl+d也可以退出,ctrl+d的含义是终止终端输入
4、系统文件
/etc/passwd:
存储用户账号的基本信息,如:
openlab:
x:
104:
1:
:
/user/openlab:
/bin/csh,一个账号的信息以'
分隔,格式为用户名:
密码占位符:
用户的uid:
用户的gid:
用户的基本描述信息(如邮箱等):
用户登录时的主目录:
用户登录时默认的Shell。
每个用户的信息占用一行
/etc/shadow:
存储用户密码加密后的信息,如:
kO0xoLuG0wpo2:
14175:
,第二个位置就是用户加密后的密码。
此文件在默认情况下只有root有读权限
用户在登录时,系统会根据输入的用户名和密码到这两个文件中验证,如果验证失败,则不允许登录
/etc/group:
存储组信息,如:
adm:
4:
root,daemon,格式为组名:
密码:
组id:
组内用户列表。
一个用户可以属于多个组,每个组也可以有多个用户
/etc/.login和/etc/profile分别为CShell和BShell的系统初始化环境文件,具体内容看环境变量部分
/var/adm/wtmpx和/var/adm/utmpx均为Unix系统用户登录退出信息记录文件,wtmpx存放曾经登录的记录(用last查看),utmpx存放在线的用户(用who查看);
/var/log/wtmp为Linux系统用户登录退出信息记录文件。
该文件会记录用户的登录名、进程id、设备名、终端号、入口类型(7为登录,8为退出)、登录或退出时间、用户登录的ip地址等。
last命令可以读这些文件,并以用户可以看懂的方式输出,如:
last-f/var/adm/utmpx,-f选项可以指定某个文件
5、文件系统
在安装Windows时,我们需要给硬盘分区、格式化、将系统安装在C盘上,可以有多块硬盘,分区后的盘符与C盘并列;
Unix系统与Windows也有相似之处,只是Unix系统是一个树状结构,有一个'
/'
路径,其他的分区都挂载在'
下的某个目录上而已(见df–k命令结果)。
当一块硬盘被系统认出后,就会给这块硬盘起一个名字,方式为/dev/dsk/c0t0d0,c表示控制器号,t表示目标号,d表示盘符,其后面跟着的三个数字联合唯一表示一块硬盘,新的硬盘需要通过format命令进行分区,分区后会变成/dev/dsk/c0t0d0s*,Solaris系统可以划分为s0--s7,其中s2表示整块硬盘,不能使用,所以最多7个分区,分区号不需要连续;
再通过newfs命令创建文件系统(相当于格式化),目的是划分block(如datablock、i-nodeblock等),以便于向系统申请空间时可以根据不同类型申请不同的block;
最后通过mount命令挂载其它分区到根文件系统下的某个目录上,不同硬盘的不同分区就这样组织起来了
6、i-node
每个文件系统都有一张i-node表,这个表是在newfs时生成的,里面存放的是i-node,一个i-node占用一个i-node-block。
每当我们向系统申请空间创建一个文件的时候,系统就会从i-node表中申请一个i-node,i-node也是文件查找的依据,如ppt中演示的执行cat/etc/passwd的过程。
对于文件来说,它的datablock中存放的是文件的内容,而对于目录来说,它的datablock中存放的是文件名和i-node的对应关系
ls-i查出文件和目录的inode号,顺便解释软硬连接:
lnfile1file2硬连接:
在inode文件中增加一条记录,指向同一文件,当硬连接数大于1的时候,删除文件只的删除了文件名到inode的一条对应关系。
文件内容没有删除。
硬连接文件是一个存在的文件
ln-sfile1file2软连接:
在文件中保存另外一个文件的位置,磁盘中会生成俩个inode号。
软连接文件是一个类型为l的文件:
lrwxrwxrwxaa->
a.txt
7、常用命令,只做介绍,更多内容请参见man手册
mkdir[-p]创建一个或多个目录
创建目录:
mkdir目录名
创建多个目录:
mkdir目录1目录2
参数:
-p可以纵向创建多层目录,如:
mkdir-pa/b/c
cd路径改变当前目录
~:
波浪号,代表当前用户的主目录
绝对路径:
由根("
/"
)开始的路径
相对路径:
默认是当前路径,不以"
开始
rmdir目录名删除空目录,该命令只能删除空目录
rm[-rfi]删除文件或目录
-r:
删除一个目录rm-r目录名(目录可以不为空)
-i:
显示交互提示信息
-f:
强制删除(包括被保护的文件)
pwd显示出用户当前工作目录的绝对路径
touch改变文件的最后一次访问和最后一次修改时间,如果文件不存在,创建新的空文件
touchfile1file2
ls[-aAdFilRtu]察看当前工作目录下的文件和目录
-a:
显示所有文件或目录,包含所有以'
.'
开头的隐藏文件
-A:
显示所有文件或目录,包含隐藏文件,但不显示'
和'
..'
-d:
如果参数是目录,则显示目录名,常与-l一起使用
-F:
可以显示文件类型*:
可执行文件;
/:
目录;
@:
软链接文件;
=:
socket文件;
|:
表示管道文件(mkfifo);
什么都没有表示普通文件
显示文件的i节点数
-l:
以长列表形式显示文件,如:
-rw-r--r--1openlabother8988月19日20:
34.cshrc,包括:
文件类型、权限、硬链接数、属主、属组、大小、最后一次修改时间、文件名
类型和权限以类似于drwxr-xr-x形式给出,第一位表示类型,可能的值有d(目录)、l(软连接文件)、b(块设备文件)、c(字符设备文件)、p(管道文件)、s(socket文件)、-(普通文件);
后九位表示权限,三位一部分,表示所有者、同组、其他人的权限;
对于硬链接数部分,如果是文件代表的是硬链接数,如果是目录,代表的该目录的子目录数加2,这个2的含义是两个隐藏目录,'
;
此外,对于文件和目录的读写执行权限还需要特别说明,对于目录来说,读权限代表ls,写权限代表可以在目录中创建、删除文件,即对目录的datablock内容进行修改,执行权限代表可以cd进入目录
-R:
显示递归(recursive)列表,显示所有子目录的目录结构-t:
按最后一次修改时间顺序显示
-u:
最后一次访问时间
chmod更改文件权限,有符号法和八进制法。
必须是文件的所有者或root
符号法:
chmod{u|g|o|a}{+|-|=}{r|w|x}filename
u表示用户本人;
g表示同组用户;
o表示其他用户;
a表示所有用户
+给予权限;
-取消权限;
=将所许可的权限赋给文件
r:
可以查看文件的内容,对目录来讲,可以查看目录内的内容
w:
可以修改文件,对目录来讲,可以在里面建立、删除文件
x:
文件可以运行,对于目录来讲,可以cd进去
还支持这样的语法:
chmodo=ufile,表示file文件其他人的权限赋值为u的权限
八进制数字法:
此方法用三位八进制数表示权限,每位数字分别表示用户本人、同组用户、其他用户的权限,其中:
4(100)表示可读;
2(010)表示可写;
1(001)表示可执行
644是文件常用的权限、755是目录的常用的权限,也往往被设置为默认的权限,当我们创建一个文件或者目录时,这个文件或者目录的权限,是与用户自己umask值设置相关的,文件创建后的权限会用666和umask值做‘运算‘,目录创建后的权限是777和umask值做‘运算’
umask:
权限掩码
eg:
22
----w——w——
掩盖掉其他和同组人的权限022
所以文件666应该设置为644
目录777应该设置为755
改变掩码:
执行命令:
umask066或者:
在初始化文件中设置
权限和掩码的运算不所单纯的减运算。
chown[-R]usernamefileName|dirName修改文件或目录的所有者,只有属主或root用户有此权限
-R表示改变目录所有者的同时,改变其所有子目录的所有者,如:
chown-Ropenlabfilename
mv[-i]移动和重命名
移动:
mv文件名文件要移动到的目录
mv目录1目录2把目录1整体移动到目录2下
改名:
mva.txtb.txt给a.txt改名为b.txt,如果b.txt存在,则内容变为a.txt的内容
-i提示是否覆盖已经存在的文件
cp[-ri]复制文件或目录
cpfile1file2源文件一定要存在,如果file2存在,file2的内容会被file1内容覆盖,如果不存在,会创建一个名字是file2的file1拷贝。
cp-ifile1file2如果file2存在,-i选项会按提示进行拷贝文件
cp-rdir1dir2对目录做备份如果dir2不存在,则按原来的目录结构一样做备份,如果dir2存在,原目录变成目标目录的子目录
catfileName显示文件内容,当文件内容在屏幕上滚动显示时,可按ctrl+S键暂停滚屏,按ctrl+Q继续,用此命令不会分屏显示。
一般用这个命令查看小文件,或者将几个小文件连接成一个大文件,如:
cata.txtb.txtc.txt>
d.txt
morefileName分屏显示文件内容,显示时各功能键如下:
space或f:
继续下一屏的输出;
b:
返回上一屏;
enter:
看下一行的输出;
q:
退出显示文件内容;
/字符串:
查询字符串所在处;
n:
查找下一个
filename*显示文件类型,按照文件内容推测文件类型,比较准确
head[-n]显示文件头几行内容,缺省显示10行
-n:
表示显示文件行数,如:
head-n10/etc/passwd或者head-10/etc/passwd
tail[-n][-f]显示文件尾部,缺省10行,可用于跟踪文件增长过程
显示文件最后n行;
+n:
从文件的第n行开始显示;
-f:
设置实时刷新,可用来做日志监控
who查看当前登录用户,显示登录名、伪终端号、登录时间、登录ip
w查看当前登录用户,显示的信息比who更详细,具体显示含义使用man查询
-h:
不显示起始行;
-s:
按短格式显示
users显示当前登录的用户名列表
id[-a][user]查看当前用户有效身份、用户id、组名、组id,加-a选项会显示用户属于的所有组加了用户名,如:
id-aopenlab,可以显示openlab帐户的信息
whoami显示用户有效身份
whoami显示用户真实身份,讲解时使用su命令
whereis确定一个命令的二进制行码、源码及联机手册所在的位置:
whereis命令名
which显示命令名的路径或者alias,如:
which命令名
clear清屏
ln[-s]创建软、硬链接
lnfile1file2给file1创建一个硬链接名字为file2,实际上是增加了一个文件名和i-node的对应关系,修改目录的datablock中的内容,如果做删除文件操作,会检查文件的硬链接数,如果文件的硬链接数为1,则收回文件的datablock和i-node-block,否则仅删除一个对应关系
ln-sfile1file2给file1(file1可以是目录)创建一个软链接,名字为file2,实际上申请了新的i-node和datablock,datablock中的内容存放的是file1的名字,如果删除了源文件,就释放了datablock,软链接文件不能找到原始文件
软链接可以跨文件系统,硬链接不可以;
链接文件可以解决操作系统版本问题,如某版本的可执行程序在/usr/bin目录下,而新版本的可执行程序放在/bin目录下,相同的命令放两份是资源浪费,这时可以使用链接文件解决,将/bin链接到/usr/bin目录上。
Linux系统的启动器和Windows中的快捷方式完成相同的功能,可以创建一个启动器,用vi打开这个文件查看它的内容,里面记录的是命令名、版本、图标等相应的信息,双击一个启动器可以访问这个程序,双击一个链接文件不能达到相同的目的,链接文件是在没有图形界面的时候就出现了,当时没有快捷方式的概念。
链接文件可以使我们管理文件时方便,常用的深目录文件可以通过链接文件实现管理的方便,但是这样会造成树状结构的目录变成网状
df[-hk]显示磁盘空间的使用情况,包括文件系统安装的目录名、块设备名、总字节数、已用字节数、剩余字节数占用百分比等。
-k:
显示磁盘空间使用信息
以G、M、K等方便人阅读的方式显示
du[-hks]统计磁盘使用情况
当前目录下和所有子目录空间占用情况,以千字节方式显示
以G、M、K等方便人阅读的方式显示,低版本系统可能不支持
-s:
统计总的块数(block),1个block是512bytes
grep[-iv]过滤功能,把包含这个串的行输出来,可以使用正则表达式,实现过滤用|grep
例:
ls|grepa把含有a这个字符的文件名和目录列出来
忽略大小写
-v:
找出不能匹配的行
xargs建立参数表并执行命令。
在使用find命令的-exec选项处理匹配到的文件时,find命令将所有匹配到的文件一起传递给exec执行。
但有些系统对能够传递给exec的命令长度有限制,这样在find命令运行几分钟之后,就会出现溢出错误。
错误信息通常是“参数列太长”或“参数列溢出”。
这就是xargs命令的用处所在,特别是与find命令一起使用。
find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。
这样它可以先处理最先获取的一部分文件,然后是下一批,并如此继续下去。
#find.-typef-print|xargsfile
wc[-lwcC]对行、单词、字符进行统计
以行为单位统计
-w:
以单词为单位统计
-c:
以字节为单位统计
-C:
统计字符个数
date显示或设置日期和时间,只有超级用户才有权限设置日期
cal用来显示某年内指定的日历
cal[[month]year]例:
cal1998
passwd[[-d]username]修改或删除登录口令,-d需要root权限,可删除指定账号的密码,解锁账号
echo回显字符和查看环境变量值
回显:
echo要显示的字符,如:
echoAAA
查看环境变量值:
echo$环境变量名,如:
echo$PATH
|管道符,连接两边的命令,把前一个命令的输出,作为下一个命令的输入
ls-l|grep^d,列出所有目录的详细列表
<
输入重定向:
可以将输入写入指定文件
>
输出重定向:
可以把一个命令的输出重定向到一个文件里,如果文件存在,覆盖源文件
追加:
把一个命令的输出追加到一个文件里,文件不存在则创建
man格式化察看帮助手册,常用操作如下:
(可能由于版本问题,部分命令不可用)
1)空格:
翻向下一页
2)回车:
看下一行
3)f:
翻页(功能同空格)
4)b:
往回翻页
5)/字符:
查找指定的字符串(按n可以继续进行查找)
6)q:
退出帮助手册
手册是分节的,可以使用-s节号来指定查询哪个节的内容,如:
man-s2read。
常用的系统命令都在节1中,节2中一般是系统调用,节3中是c的函数等等
find查找文件语法:
find路径查询条件
find是精确匹配:
find.-namefile1模糊匹配为:
find.-name"
file*"
-name:
按文件名查找
-mtime10修改时间距今10天的文件,+10大于10天,-10小于10天
-size+400表示文件大小超过400个block
-typef只查找普通文件
crontab[-elr[username]][File]定时服务,系统会定时执行用户配置的任务
username:
是指设定指定user的时程表,这个前提是你必须要有其权限(比如说是root)才能够指定他人的时程表。
如果不使用-uuser的话,就是表示设定自己的时程表
-e:
设置定时任务(回车后进入vi模式)
查看有哪些定时服务
-r:
删除目前的任务表
配置的任务文件格式是:
*****指令;
每位表示的含义是:
分钟(0-59);
小时(0-23);
日期(1-31);
月(1-12);
星期(0-6,0表示周日)
例:
2617**5ls-l>
test.txt,表示每到周五的17点26分,执行命令ls-l>
test.txt
查看结果:
mailx
alias用户可以将常用的命令用自己习惯的名称来重新命名,不同的Shell语法不同
CShell:
aliasdir'
ls-F'
aliasdir='
ls-a'
8、进程相关命令(了解)
/usr/bin/ps[-ef][-Uuid]列出系统当前运行的状态
详细列表(UID:
启动进程的用户;
PID:
进程号;
PPID:
父进程号;
STIME:
进程开始时间;
TTY:
进程和哪个终端相关;
TIME:
进程累计使用CPU时间;
CMD:
进程运行的命令)
-Uuid:
列出某个用户或用户id相关的进程
列出所用进程
无参数:
列出当前终端相关的进程
/usr/ucb/ps[-auwx]列出系统进程,比/usr/bin/ps更详细
所有进程;
-u:
显示USER、%CPU等信息;
-w:
使用宽格式输出;
-x:
包括无终端控制的进程
USER:
进程属于谁
PID:
进程号
PPID
父进程号。
%CPU:
累计使用的CPU
%MEM:
占用的memory,百分比
SZ:
进程的地址空间大小size
RSS:
residentsetsize驻留集大小
TT:
终端号
S:
进程的状态(R可运行状态;
O正在运行;
S休眠Sleep;
T是进程挂起,相当于暂停;
Z是僵尸进程,Solaris中僵尸进程的进程名是<
defunct>
)
START:
启动时间
TIME:
累计使用时间
COMMAND:
执行的命令
prstat实时显示当前系统中所有进程,退出使用q
kill[-signal]pid向进程发送信号,只有root和所有者有权限
-signal是一个信号,pid为进程号。
kill-l可以列出系统支持的所有信号,前面的数字就是signal的值
如,kill-91230,向1230号进程发送SIGKILL信号kill1230,向1230号进程发送SIGTERM终止信号。
SIGKILL信号不能被捕获忽略,SIGTERM可以捕获忽略
pkill进程名终止所有与进程名匹配的权限之内的进程
sleepn休眠n秒后退出,会占用当前终端,使用ctrl+c可以退出。
ctrl+c终止前台的一个程序
ctrl+z使前台运行的一个程序挂起
&
将进程放在后台运行,如:
sleep1000&
jobs[-l]列出所有工作的状态,-l参数可以显示工作的进程号+表示最近的作业,-表示先前的作业
fg[%job_id]将工作号是job_id的工作转到前台
bg[%job_id]将工作号是job_id的工作转到后台运行,一般在挂起之后做这个操作
stop[%job_id]使后台工作号是job_id的工作挂起
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- unix 串讲