第三章Linux文件管理.docx

上传人:b****8 文档编号:9536339 上传时间:2023-02-05 格式:DOCX 页数:27 大小:56.57KB
下载 相关 举报
第三章Linux文件管理.docx_第1页
第1页 / 共27页
第三章Linux文件管理.docx_第2页
第2页 / 共27页
第三章Linux文件管理.docx_第3页
第3页 / 共27页
第三章Linux文件管理.docx_第4页
第4页 / 共27页
第三章Linux文件管理.docx_第5页
第5页 / 共27页
点击查看更多>>
下载资源
资源描述

第三章Linux文件管理.docx

《第三章Linux文件管理.docx》由会员分享,可在线阅读,更多相关《第三章Linux文件管理.docx(27页珍藏版)》请在冰豆网上搜索。

第三章Linux文件管理.docx

第三章Linux文件管理

第三章Linux文件管理

教学内容:

⏹文件系统及Shell的基本概念

⏹文件及目录操作命令

⏹VI的使用

⏹软件包的管理

教学目标:

⏹了解文件系统的作用及常用shell

⏹熟悉shell的功能及执行命令的过程

⏹掌握文件、目录的操作命令、软件包的管理操作及VI的使用

教学重点:

⏹文件操作命令

⏹目录操作命令

⏹VI的使用

⏹RPM包的管理

教学难点:

⏹VI的三种模式

⏹Find命令

⏹编译安装

一。

文件系统及Shell的基本概念

1.文件系统的含义

文件系统是用来管理和组织保存在磁盘驱动器上数据的系统软件

2.Linux的文件系统

Linux系统采用虚拟文件系统技术(VFS)、结构采用倒立树型、VFS使Linux支持以下文件系统:

●EXT2:

二次扩展

●EXT3:

三次扩展

●SWAP:

交换文件系统

●FAT、FAT32

●NTFS(默认不支持,需要特定的模块)

●VFAT:

虚拟FAT

●SYSV:

Unix的文件系统

●HPFS:

OS/2的文件系统

●ISO9660:

光盘文件系统

●NFS:

网络文件系统

3.Linux中的文件分类

(1)普通文件

文本文件:

采用ASCII编码方式,可编辑,可修改

二进制:

不可查看,不可修改

(2)目录文件

存放的内容是目录中的文件名和子目录名

(3)设备文件(/dev)

用于用户访问物理设备所用,分为块设备和字符设备文件

(4)链接文件

软链接文件:

目标文件和链接文件可以跨越索引点,相当于文件的快捷方式

删除原文件,则符号链接文件失去意义

删除符号链接文件,不影响原文件

硬链接文件:

链接同一索引点中的文件,相当文件的副本

两个文件指向同一存储区,内容、长度相同

删除一个文件不影响,其它文件

(5)管道文件

FIFO缓存队列

4.Shell的主要功能

●命令行解释

⏹交互模式

⏹后台运行

●命令的多种执行顺序

●命令替换(``)

●I/O重定向(>,>>,<,<<)

●管道(|)

●通配符(*,?

[],[!

])

●系统环境维护

●Shell编程

●历史记录(history)

●自动补齐(TAB)

5.Shell的命令解释过程

二.文件操作命令

1.pwd

功能:

显示当前目录

实例:

◆#pwd

2.cd

功能:

改变当前目录

实例:

◆#cd/usr/sbin(进入/usr/sbin)

◆#cd../u1(进入父目录下面的u1目录)

◆#cd..(返回父目录)

◆#cd(进入用户主目录)

◆#cd~(进入用户主目录)

3.mkdir

功能:

建立目录

格式:

mkdir[参数]<目录名>

参数:

-m属性值:

指定目录的属性(r、w、x或4、2、1)

-p:

循环建立目录

实例:

◆#mkdird1(在当前目录下建立d1子目录)

◆#mkdir/d1/d2/d1/d3/d1/d4(同时在/d1目录中建立d2,d3,d4子目录)

◆#mkdir–p/d1/d2(在/d1目录中建立d2子目录,先建d1)

4.rmdir

功能:

删除空目录

格式:

rmdir[参数]<目录名>

参数:

-p:

循环删除

实例:

◆#rmdira1(删除当前目录下的a1子目录)

◆#rmdir/etc/a2(删除/etc下a2子目录)

◆#rmdir-p/a1/a2

5.ls

功能:

显示目录中的文件及子目录的名称

格式:

ls[参数][文件名]

参数:

-a:

显示所有文件(包括隐含文件,以“.”开头的文件为隐含文件)

-l:

以长格式显示文件名及目录名(显示文件的详细信息)

-F:

显示文件名,同时显示类型

-R:

显示目录中所有文件及子目录中的文件结构

-t:

按照修改时间排序显示

-s:

显示文件的大小,以block为单位

-S:

按照文件大小排序显示

-m:

分列显示文件名

实例:

◆#ls

◆#ls/bin/

◆#lsgrub.conf查找当目录下是否存在grub.conf

◆#ls-l

◆#ls--help显示ls的详细的帮助信息

◆#ls-a

6.cp

功能:

复制文件

格式:

cp[参数]<源路径><目标路径>

参数:

-f:

文件在目标路径中存在时,则直接覆盖

-i:

文件在目标路径中存在时,提示是否覆盖

-r:

复制指定中所有内容和结构

-b:

生成覆盖文件的备份

-a:

保持文件原有属性

实例:

◆#cp/etc/*/a1/把/etc下的所有文件复制到a1目录中

◆#cp/bin/ls/dir1/bin/ls文件到/目录取名为dir1

◆#cp-f/sbin/*/exe/直接将/sbin下的所有文件到/exe目录中

◆#cp-r/soft/abc/

7.rm

功能:

删除文件

格式:

rm[参数]<文件名>

参数:

-f:

不提示确认删除

-i:

提示确认删除

-r:

递归删除

实例:

◆#rm/m1/f1删除/m1目录下的f1

◆#rm–f/m1/*删除m1目录下的所有文件

◆#rm-rf/m1强制删除一个目录

8.mv

功能:

移动文件、重命名文件

格式:

mv [参数]<源路径><目标路径>

参数:

-i:

如果存在文件重名则提示是否覆盖

-b:

建立覆盖文件的备份

-f:

如果存在文件重名则直接覆盖

实例:

◆#mv/m1/f1/m2/移动/m1目录下f1文件到/m2目录下

◆#mvf1f2将当前目录下的f1文件改名f2

◆#mv-f/d1/*/d2/移动/d1中的所有文件到/d2目录中

9.file

功能:

检测文件类型

格式:

file[参数]<文件名>

参数:

-z:

检测压缩包文件

-L:

跟随符号链接

实例:

◆#file/etc/lilo.conf

◆#file-z1.gz

10.显示文本文件内容

(1) cat

格式:

cat[参数] <文件名>

参数:

-n显示行号

-b显示行号,但空白行不显示行号

   实例:

◆#cat/etc/inittab

◆#cat-n/d1/f1/d1/f2>txt1

(2)more

  格式:

more[参数] <文件名>

  实例:

◆#ls|more将ls的显示结果输入到more中

◆#more/etc/rc.d/rc显示/etc/rc.d/rc文件的内容

说明:

可以用回车键向下换行,空格键向下换页

     按Q键退出more

(3)less

   实例:

◆#ls|less将ls的显示结果输入到less中

◆#less/var/named/localhost.zore

说明:

Pageup/PageDown键上下滚动、Q键退出

(4)head、tail

实例:

◆#head-20/a1显示a1中前20行

◆#tail-20/a1 显示中a1后20行

(5)cut

功能:

显示文件中指定数目的字符、字节或字段

格式:

#cut参数数字文件

参数:

-c以字符为单位

-b 以字节为单位

-f以字段为单位

-d指定分隔符

实例:

#cut-c3/etc/passwd

#cut-f1-6-d:

/etc/passwd

#cut-b-8/etc/passwd

11.搜索文件

(1)find

格式:

find查找路径查找条件

条件:

-name“文件名”:

查找指定名称文件

-lname“文件名”:

查找指定文件所有的接文件

-user用户名:

查找指定用户拥有的文件

-group组名:

查找指定组拥有的文件

-linksn:

查找拥有n个链接的文件

-mtimen:

查找在N天前被修改过的文件

-atimen:

查找在N天前被访问过的文件

-typed/f/b/l/p:

查找指定类型的文件

-sn[bcwkMG]:

查找指定大小的文件

-empty:

查找为空的文件

-permmode:

查找指定属性的文件

-execcommand{}\;查找指定的文件并执行指定的命令

-newer文件名查找比指定文件新的文件

实例:

◆#find/-name“named*”

◆#find/-userroot

◆#find./-typed-execchmod755{}\;

◆#find.–empty

◆#find.-perm644

◆#find.-neweroldfile!

-newernewfile

(2)whereis

功能:

查找二进制可执行、手册及源文件

实例:

#whereisumount

(3)locate

功能:

在资料库中查找指定的文件

格式:

#locate[参数] 文件名

参数:

-u/-U建立资料库,-u会由根目录开始,-U则可以指定开始位置

-e<目录1…>排除指定目录在寻找范围之外

-l<0/1>设置安全级别,1启用安全模式,0关闭安全模式

-f<文件类型> 在资料库中排除特定类型文件排除在外

-n至多显示n个输出

-r使用正规运算式做寻找的条件

-o指定资料库存的名称。

-d指定资料库的路径

实例:

#locate-u

#locatechdrv

#locate-n100a.out

(4)which

功能:

查找指定命令文件

格式:

#which文件名

实例:

#whichmount

12.grep

功能:

在文本文件中查找匹配的字符串

格式:

#grep[参数]“字符串”文件

参数:

-?

同时显示匹配行上下的?

-b在匹配行前面打印该行所在的块号

-c只打印匹配的行数,不显示匹配的内容

-fFile从文件中提取模板,空文件中包含0个模板,所以什么都不匹配

-h当搜索多个文件时,不显示匹配文件名前缀

-I忽略大小写差别

-q取消显示,只返回退出状态。

0则表示找到了匹配的行

-l打印匹配模板的文件清单

-L打印不匹配模板的文件清单

-n在匹配的行前面打印行号

-s不显示关于不存在或者无法读取文件的错误信息

-v反检索,只显示不匹配的行

-w如果被\<和\>引用,就把表达式做为一个单词搜索

正则表达式元字符:

^

锚定行的开始如:

'^grep'匹配所有以grep开头的行

$

锚定行的结束如:

'grep$'匹配所有以grep结尾的行

.

匹配一个非换行符的字符如:

'gr.p'匹配gr后接一个任意字符,然后是p

*

匹配零个或多个先前字符如:

'*grep'匹配所有一个或多个空格后紧跟grep的行。

.*一起用代表任意字符

[]

匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep

[^]

匹配一个不在指定范围内的字符,如:

'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行

\(..\)

标记匹配字符,如'\(love\)',love被标记为1

\<

锚定单词的开始,如:

'\

\>

锚定单词的结束,如:

'grep\>'匹配包含以grep结尾的单词的行

x\{m\}

重复字符x,m次,如:

'0\{5\}'匹配包含5个o的行

x\{m,\}

重复字符x,至少m次,如:

'o\{5,\}'匹配至少有5个o的行

x\{m,n\}

重复字符x,至少m次,不多于n次,如:

'o\{5,10\}'匹配5--10个o的行

\w

匹配文字和数字字符,也就是[A-Za-z0-9],如:

'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p

\W

\w的反置形式,匹配一个或多个非单词字符,如点号句号等

\b

单词锁定符,如:

'\bgrepb\'只匹配grep

+

匹配一个或多个先前的字符。

如:

'[a-z]+able',匹配一个或多个小写字母后跟able的串,如loveable,enable,disable等。

?

匹配零个或多个先前的字符。

如:

'gr?

p'匹配gr后跟一个或没有字符,然后是p的行。

a|b|c

匹配a或b或c。

如:

grep|sed匹配grep或sed

()

分组符号,如:

love(able|rs)ov+匹配loveable或lovers,匹配一个或多个ov。

x{m},x{m,},x{m,n}

作用同x\{m\},x\{m,\},x\{m,n\}

实例:

◆#ls-l|grep'^a'

通过管道过滤ls-l输出的内容,只显示以a开头的行。

◆#grep'test'd*

显示所有以d开头的文件中包含test的行。

◆#grep'test'aabbcc

显示在aa,bb,cc文件中匹配test的行。

◆#grep'[a-z]\{5\}'aa

显示所有包含每个字符串有5个连续小写字符的字符串的行。

◆#grep'w\(es\)t.*\1'aa

如果west被匹配,则es就被存储到内存中,并标记为1,然后搜索任意个字符(.*),这些字符后面紧跟着另外一个es(\1),找到就显示该行。

如果用egrep或grep-E,就不用"\"号进行转义,直接写成'w(es)t.*\1'就可以了。

13.文件压缩操作

(1)gzip(*.gz)

功能:

对单个文件压缩

格式:

gzip[参数]压缩(解压缩)文件名

参数:

-d:

用于解压缩

-t:

检验压缩文件是否损坏

-l:

显示压缩文件压缩比例

-r:

递归式地查找指定目录并压缩其中的所有文件或者是解压缩

-num:

用指定的数字num调整压缩的速度,-1或--fast表示最快压缩方法(低压缩比)

实例:

◆#gzip/a1

◆#gzip-d/a1.gz

◆#gzip-dv/*.gz

◆#gzip-r/www

(2)zip

功能:

压缩文件

格式:

#zip[参数]文件或目录名

 -d   从压缩文件内删除指定的文件。

 -F   尝试修复已损坏的压缩文件。

-t   把压缩文件的日期设成指定的日期。

 -u   更换较新的文件到压缩文件内。

 -v   显示指令执行过程或显示版本信息。

 -z   替压缩文件加上注释。

 -<压缩效率>   压缩效率是一个介于1-9的数值。

-P口令利用指定口令加密压缩包

-m添加文件到ZIP压缩包中

实例:

#zipabc.zipf1f2f3

#zip-r–P123soft.zip/soft/

#zip-dsoft.zipsoft/wb

#zip–usoft.zipabc.log

#zip-msoft.zipinstall.log

(3)unzip

功能:

解压缩zip文件

格式:

#unzip [.zip文件]

-l 显示压缩文件内所包含的文件。

  -P<密码>   

  -d<目录>指定文件解压缩后所要存储的目录。

实例:

#unzipf1.zip-d/f1

#unzip–lf1.zip

(4)tar(*.tar)

功能:

为文件或目录创建备份

格式:

tar[参数]文件/目录名

参数:

-t:

列出压缩包中的文件(*.tar)

-x:

解压缩(*.tar)

-z:

使用gzip的压缩文件

-c:

创建压缩包

-f:

指定文件名

-j:

使用bzip的压缩文件

-v:

显示操作信息

-C:

指定解压路径(默认路径为当前路径)

-r:

向压缩包添加文件

-u:

更新压缩包中的文件

-k:

还原文件过程中,遇到相同文件不覆盖

-m:

还原文件过程中,修改文件的时间为当前时间

实例:

◆#tar-cvfall.tar*.jpg

◆#tar-uvfall.tarlogo.gif

◆#tar-rfall.tar*.gif

◆#tar-cvfzetc.tar.gz/etc

◆#tar-xvfall.tar

◆#tar-xzvfetc.tar.gz-C/soft

注:

除以上的压缩工具外,还有compress(uncompress)、bzip2(unbzip2)

14.ln

功能:

建立链接文件

格式:

ln[参数]<源文件><链接文件>

参数:

-s:

建立软链接文件

-i:

提示是否覆盖目标文件

-f:

直接覆盖已存在的目标文件

实例:

◆#ln/etc/abc/abc

◆#ln-s/a1/etc/a1

15.touch

功能:

创建空文件或修改文件的时间

 格式:

#touch[参数]文件名

参数:

-r修改文件的时间为指定文件的日期时间

-d指定文件日期时间为yymmdd

-t指定文件日期时间为yymmddhhmm

-c不创建指定的文件

 实例:

#touch/f1/f2

#touch-r/f1/f2

#touch-d"6:

03pm05/06/2000"file

16.sort

功能:

对文本文件进行排序

格式:

sort[参数][文件]

参数:

-o文件名将排序结果保存到指定文件中

-u去除重复行

实例:

#sort/etc/passwd

#sort–o/etc/oldpass/etc/passwd

17.paste

功能:

合并文本文件

实例:

#pastef1f2>f3

18.cmp

功能:

比较两个文件是否有差异

格式:

#cmp[参数]文件1文件2

参数:

-l显示不同的字节位置

-s不显示不同之处,只显示返回状态

实例:

#cmpf1f2

#cmp-lf1f2

18.diff

功能:

显示文件的不同之处

格式:

#diff[参数]  文件1  文件2

参数:

-c显示全文,并标出不同之处

-u合并显示,并标出不同之处

实例:

#difff1f2

#diff-cf1f2

19.wc

功能:

统计文件中的行数、单词数、字符数

格式:

#wc[参数]  文件名

参数:

-c统计字符数

-w统计单词数

-l 统计行数

实例:

#wc/etc/passwd

#wc-c/etc/passwd

注:

1.命令自动补齐

按TAB键进行自动扩充

2.命令历史记录

Linux系统采用.history文件存放命令历史记录,以下是与历史记录相关的操作:

!

n:

调用正序第n个命令

  !

!

调用上一条命令

  history:

查看命令历史记录

history-c:

清除历史记录

history-w文件名:

保存历史记录到指定的文件中

3.命令重定向

“>”:

将命令输出结果保存到指定文件中,如果文件不存在先建立,存在就覆盖

“>>”:

将命令输出结果保存到指定文件中,如果文件不在存先建立,存在就覆盖

“<”:

把文件内容输入指定命令

“<<”:

将一对分隔之间的正文输入给指定命令

实例:

#ls>abc.txt

#ls/etc>>abc.txt

#wc

#wc<

4.命令管道(前一个命令的输出作为后一个命令的输入)

实例:

ls|more

5.命令替换(取指定命令的结果)

实例:

#cat`lsabc`

6.多个命令执行顺序

“;”:

顺序执行多个命令

“||”:

前后命令的执行存在“逻辑或”关系,只有||前面的命令执行失败后,它后面的命令才被执行

“&&”:

前后命令的执行存在“逻辑与”关系,只有&&前面的命令执行成功后,它后面的命令才被执

实例:

#ls/etc;cd/etc

#ls/d1/f1||touchf1

7.命令别名

实例:

#alias[别名=’命令’]

三.vi编辑器的使用

1.vi定义

Vi 是Unix/Linux系统中的一种文本编辑软件

2.vi三种模式

⏹命令模式:

删除字符、排版

⏹插入模式:

插入字符、删除、修改字符

⏹最后行模式:

通过命令操作vi软件

               进入vi

3.vi的使用

(1)启动VI

#vi [参数][文件名]

(2)VI常用命令

⏹移动光标

●左移一个字符:

按h

●右移一个字符:

按l

●下移一行:

按j

●上移一行:

按k

●移至行首:

按^

●移至行尾:

按$

●移至文件顶部:

按H

●移至文件尾部:

按L

●移至文件中部:

按M

●前翻一屏:

按ctrl+f

●后翻一屏:

按ctrl+b

●前翻半屏:

按ctrl+d

●后翻半屏:

按ctrl+u

●移动光标到指定行:

输入:

数字

⏹插入文本

●在光标右边插入文本:

按a

●在一行的结尾处添加文本:

按A

●光标左边插入文本:

按i

●在行首插入文本:

按I

●在光标所在行的下一行插入新行:

按o

●在光标所在行的上一行插入新行:

按O

⏹撤消和重复操作

●撤消上一个操作:

按u

●撤消光标所在行的更改:

按U

●重复操作:

输入”.”

⏹删除文本

●删除当前字符:

按x

●删除一词:

按dw

●删除一行:

按dd(剪切)

●删除行的部分内容:

按D(删除光标右的内容)或按d0(删除光标左的内容)

●删除到文件的结尾:

按dG

●dL :

删除直到屏幕上最后一行的内容

●dH :

删除直到屏幕上第一行的内容

●dG :

删除直到工作缓存区结尾的内容(文尾)

●d1G :

删除直到工作缓存区开始的内容(文头

●:

n,md:

从第n行开始删除m行

⏹复制和粘贴

●复制一行内容:

按yy

●粘贴:

按p

⏹查找和替换命令

●/string:

向前查找字符串

●?

string:

向后查找字符串

●n:

继续上一次查找

●shift+n:

以与上一次相反的方向查找

●:

%s/字符串1/字符串2/g:

在全文中替换字符串1为字符串2

●n,ms/字符串1/字符串2/g:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 经管营销 > 生产经营管理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1