第三章Linux文件管理.docx
- 文档编号:9536339
- 上传时间:2023-02-05
- 格式:DOCX
- 页数:27
- 大小:56.57KB
第三章Linux文件管理.docx
《第三章Linux文件管理.docx》由会员分享,可在线阅读,更多相关《第三章Linux文件管理.docx(27页珍藏版)》请在冰豆网上搜索。
第三章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 -t -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: 替
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 Linux 文件 管理