Linux文件管理 linux课程

Linux课程(Linux文件管理)
一.文件命名规则
1.可以用什么字符?
可以使用除“/”以外的所有字符,但需要注意的是,不建议在目录名或文件名中使用某些特殊字符,如、、等 。、*等 。,并尽量避免使用它们 。
如果文件名包含特殊字符,如空,则在访问该文件时需要用引号将文件名括起来 。
建议的文件命名规则:
Linux严格区分大小写,所以尽量使用小写字母 。
如果文件名一定要拆分,建议用“_”,例如:itheima _ bj _ 2020.log 。
a.txt
001.txt
002.txt
tongxunlu.txt
tongxunlu_bj_caiwu.txt
2、文件名的长度
目录或文件名的长度不能超过255个字符 。
3.Linux文件名有大写和小写 。
Linux目录名或文件名区分大小写 。如itheima、ITheima、魏云和魏云,是不同的目录名或文件名 。
不要使用字符大小写来区分不同的文件或目录 。
建议文件名始终使用小写字母 。
4.Linux文件扩展名
Linux的文件扩展名对于Linux操作系统来说并没有什么特殊的意义,Linux系统也不会以文件扩展名来划分文件类型 。例如,itheima.exe只是一个文件,和它的扩展名 。exe并不意味着该文件必须是可执行的 。
在Linux系统中,文件扩展名的目的是让操作者更好的区分不同的文件类型 。
二、文件管理命令
在日常工作中,我们经常需要操作Linux文件或目录 。常见操作包括创建、删除、更改、查看、复制、移动等 。
1.目录创建/删除
在实际应用中,与目录相关的操作主要有两种:创建目录和删除目录 。
① mkdir创建目录
命令:mkdir(创建目录,创建目录)
角色:创建目录
语法:# mkdir[参数选项]路径(包括目录名)
通用参数:
-p:递归创建所有目录 。如果要创建不存在的多层路径,可以使用-p参数 。-p表示父母,意为父母 。
用法:mkdir不带参数,路径(包括目录名)
示例代码:
#mkdir /usr/local/nginx
含义:在/usr/local目录下,创建一个名为nginx的文件夹 。
注意:mkdir命令默认不能创建不同级别的目录,必须要求要创建的目录所在的目录必须存在 。
用法:mkdir plus -p参数,路径(需要包括目录名)
示例代码:
# mkdir-p/usr/local/ithe IMA/Tomcat
含义:在/usr/local目录下,同时创建itheima文件夹和itheima下的子文件夹tomcat 。
错误:无法创建目录“/usr/local/itheima/Tomcat”:没有这样的文件或目录
含义:无法创建目录“XXX”:没有文件或文件夹 。
用法:mkdir路径1路径2路径3
示例代码:
# mkdir/usr/local/A/usr/local/B/usr/local/C含义:在/usr/local目录中,同时创建文件夹A、B、C 。
Mkdir命令摘要
#mkdir /mydata在根目录中创建mydata文件夹 。
#mkdir -p /itcast/tbd一次建立多级文件夹/itcast/tbd
#市场/待定/金燕龙/顺义
问:刚刚安装了Centos系统 。小明想成立/小明/左烨/舒雪 。应该用mkdir还是mkdir -p?
回答一个问题
答案B mkdir -p
②删除目录 。
命令:rmdir(删除目录的缩写)
角色:删除空目录
语法:# rmdir[参数选项]路径(包括目录名)
通用参数:
-p:递归删除所有空目录
用法:rmdir不带参数,不带路径(包括目录名) 。
示例代码:
#rmdir /usr/local/nginx
用法:rmdir路径1路径2路径3
示例代码:
# rmdir/usr/local/a/usr/local/b/usr/local/c
含义:同时删除A、B、C三个空目录 。
用法:rmdir -p路径(需要包括目录名)
示例代码:
#rmdir -p itheima/tomcat
含义:递归删除目录,删除tomcat和itheima目录 。
首先,删除子目录 。删除成功后,删除上级目录,直至结束 。
Rmdir命令摘要
#rmdir /itcast删除根目录中的itcast目录 。
# rmdir/it cast/jinyan long/Shuyi同时删除根目录中的itcast jinyanlong hunyi 。
#rmdir -p /itcast/heima立即删除heima及其上级目录itcast 。
2.文件创建/删除
在实际应用中,与文件相关的操作主要有两种:创建文件和删除文件 。
①创建文件 。
命令:触摸
角色:创建文件
语法:# touch文件路径[文件路径2文件路径3 …]
用法:触摸路径(包括文件名)
示例代码:
#touch readme.txt
含义:在当前路径下创建一个文件readme.txt 。
用法:触摸路径1(包括文件名)、路径2(包括文件名)和路径3(包括文件名)
示例代码:
#touch 1.txt 2.txt 3.txt
含义:在当前路径下创建三个文件1.txt 2.txt 3.txt 。
用法(理解):触摸路径1(包括文件名){1..n}
示例代码:
#touch {1..5}.文本文件(textfile)
含义:在当前路径下创建三个文件1.txt 2.txt 3.txt 4.txt 5.txt 。
在…之中
1是起始数字 。
..意味着连续
5是表示结束的数字 。
触摸命令摘要
#touch readme.txt在当前目录下创建一个文件
#touch /readme.txt在根目录下创建一个文件 。
#touch 1.txt 2.txt 3.txt同时创建1.txt 2.txt 3.txt 。
# touch/usr/local/1 . txt/usr/local/2 . txt/usr/local/3 . txt
在/usr/local下创建1.txt 2.txt 3.txt
# touch/usr/local/1 . txt 2 . txt 3 . txt
#touch {1..6}.原木
在当前目录下,创建1到6.txt
1 .文本2 .文本3 .文本4 .文本5 .文本6 .文本
②删除文件 。
命令:RM(remove的缩写)
角色:删除文件或文件夹 。
语法:RM[参数选项]文件或文件夹
选项:-r:递归删除,主要用于删除目录,可以删除指定目录及其所有内容,包括所有子目录和文件-f:强制删除,不提示任何信息 。操作前一定要小心!!!
用法:rm路径(包括文件名)
示例代码:
#rm readme.txt
含义:删除当前路径下的文件readme.txt 。
消息:删除常规空文件' readme.txt '吗?
含义:要删除普通空文件' readme.txt '吗?
用法:rm -r路径(通常是目录名)
示例代码:
#rm -r itheima
含义:删除当前文件夹下的itheima文件夹及其所有子文件夹/文件 。
消息:进入目录‘ithe IMA/’?
意思:你进入itheima目录了吗?
用法:rm -rf路径(通常是目录名)
示例代码:
#rm -rf itheima
含义:强制删除当前文件夹下的itheima文件夹及其所有子文件夹/文件 。
Rm命令摘要
#rm readme.txt删除文件并确认
#rm -r shop删除目录并确认
#rm -rf shop删除目录及其所有子目录和文件,无需确认 。
3.复制和剪切
①复制操作
命令:cp(复制缩写,复制操作)
角色:将文件/文件夹复制到指定位置 。
语法:# CP[参数选项]源路径(包括文件名)目标路径(如果不指定文件名,文件名将保持不变)
常用参数:-r:递归,递归,用于复制目录 。
用法:cp源路径目标路径(不指定文件名)
示例代码:
# CP/root/ithe IMA . txt/usr/local/
含义:将/根目录下的itheima.txt文件复制到/usr/local,文件名相同 。
用法:cp源路径目标路径(指定文件名)
示例代码:
# CP/root/ithe IMA . txt/usr/local/heimayunwei . txt
含义:将/根目录下的itheima.txt文件复制到/usr/local,重命名为heimayunwei.txt
用法:cp -r源路径(包括目录名)目标路径
示例代码:
# CP-r/root/chuanzhiboke/usr/local/
含义:将/根目录下的传知博克目录复制到/usr/local 。
命令摘要
#cp readme.txt /usr/local/将当前目录下的readme.txt复制到/usr/local 。
# CP readme . txt/usr/local/readme . txt
# CP readme . txt/usr/local/read his . txt
#cp readme.txt readme.aaa
# CP-r/root/chuanzhiboke/usr/local/
②剪切操作
命令:mv(移动,移动,剪切)
功能:可以在不同目录之间移动文件或目录,或者重命名文件和目录 。
语法:#mv [parameter]源文件目标路径(不指定文件名)
mv和cp之间的差异:
☆ mv不同于cp命令 。无论对于文件还是文件夹,都不需要添加-r这样的选项 。
☆默认情况下,在移动的过程中,文件名不变,只是路径变了 。
用法:mv源文件的目标路径(不指定文件名)
示例代码:
#mv readme.txt /usr/local/
含义:将当前目录下的readme.txt文件移动到/usr/local,文件名不变 。
③重命名操作
命令:mv(移动,移动,剪切)
语法:#mv [parameter]源文件目标路径(指定文件名)
用法:mv当前文件名新文件名
示例代码:
#mv itheima.txt heimacxy.txt
含义:将当前目录下的itheima.txt文件重命名为heimacxy.txt
如前所述,默认情况下文件名不变,但是如果我们指定目标文件名,它就变成了一个重命名操作 。
用法:mv当前目录名新目录名
示例代码:
#mv商店购物
含义:将当前目录中的店铺目录重命名为shopping 。
Linux中重命名的命令也是mv,语法和移动的一样 。不同的是,重命名时,通常路径不变,名称改变 。而移动是名称不变,路径变了 。
Mv命令摘要
#mv readme.txt /tmp/将当前目录下的readme.txt移动到/tmp目录下,文件名相同 。
#mv /root/shop /tmp将根目录中的shop目录移动到/tmp目录中 。
#mv hello.txt readme.txt
#mv /root/shop1 /usr/local/shop2
在创建新目录的时候,不要添加一些点,换句话说,不要创建类似shop.txt这样的目录
4.焦油包压缩和解压缩
打包是指文件或目录的集合,这个集合存储在一个文件中 。归档文件没有压缩,占用的空空间是其中所有文件和目录的总和 。
5MB
10MB
3.txt 20MB
123.tar 35MB
压缩文件也是文件和目录的集合,这个集合也存储在一个文件中,但两者的区别是压缩文件占用的磁盘空比集合中所有文件的总和要小 。
123.tar.gz不是35MB,而是压缩后的大小 。
1)包装
命令:tar
功能:将多个文件打包成一个文件 。
语法:tar选项打包要打包的文件名或目录 。
通用参数:
-c,创造就是创造 。
-v,展示打包文件的过程 。
-f,指定包的文件名 。必须添加此参数 。
-u,更新缩写,更新原始打包文件中的文件(理解)
-t,检查打包文件的内容(理解)
注意:
您可以使用tar命令指定选项,而无需在选项前输入“-” 。例如,使用“cvf”选项与“-cvf”具有相同的效果 。用tar命令归档的包通常称为tar包(tar包文件都以“.”结尾) 。焦油”) 。
用法:tar -cvf文件名文件1文件2文件3
示例代码:
# tar-CVF abc.tar a . txt b . txt c . txt
含义:将当前目录下的a.txt b.txt c.txt打包成abc.tar文件,大小为三个文件之和 。只有CVF大师 。
用法:将tar -uf文件追加到现有的包名中 。
示例代码:
# tar-uf abc.tar d . txt
含义:将当前目录下的d.txt追加到abc.tar文件中,其大小为四个文件之和 。
用法:tar -tf包文件名
示例代码:
# tar-TF abc.tar
含义:查看abc.tar文档的内容 。
2)打包和压缩(要点)
在Linux下,有很多常用的压缩工具,比如gzip、zip、bzip2、xz等 。
tar打包时支持压缩,gzip、bzip2、xz压缩工具都可以用在tar打包的文件中 。
命令:tar
功能:将多个文件打包压缩成一个文件,其实就是tar命令的三个压缩参数 。
语法:tar选项打包文件名要压缩的文件或目录 。
通用参数:
-z,压缩成 。gz格式 。
-j,压缩为. bz2格式
-J,压缩为 。xz格式
-c,创造就是创造 。
-x,解压 。
-v,展示打包文件的过程 。
-f,file指定包的文件名 。必须添加此参数 。
-u,更新缩写,更新原始打包文件中的文件(理解)
-t,检查打包文件的内容(理解)
替换
替换f
注意:这里打包的文件名叫做abc.tar.gz,其中 。gz表示用gzip压缩的tar文件,方便运维人员识别文件 。
用法:tar -jcvf文件名文件1文件2文件3
示例代码:
# tar-jcvf ABC . tar . bz2 a . txt b . txt c . txt
含义:通过bz2压缩将当前目录下的a.txt b.txt c.txt打包成abc.tar.bz2文件,这是压缩后的大小 。
用法:tar -Jcvf文件名文件1文件2文件3
示例代码:
# tar-Jcvf ABC . tar . xz a . txt b . txt c . txt
含义:通过xz压缩将当前目录下的a.txt b.txt c.txt打包成abc.tar.xz文件,这是压缩后的大小 。
注意:bz2、gzip、xz、XZ的压缩比不同 。在实践中,gzip是最常用的一种 。换句话说,最常见的压缩和打包文件是tar.gz
3)减压
解压缩时,将压缩命令中的C替换为x 。
用法:tar -zxvf文件名
示例代码:
#塔尔-zxvf abc.tar.gz
含义:解压缩abc.tar.gz文件 。
用法:tar -jxvf文件名
示例代码:
#tar -jxvf abc.tar.bz2
含义:解压abc.tar.bz2文件 。
用法:tar -Jxvf文件名
示例代码:
#tar -Jxvf abc.tar.xz
含义:解压abc.tar.xz文件 。
通用解压缩参数(记住这一点)
用法:tar -xvf文件名
示例代码:
#tar -xvf abc.tar.xz
含义:系统会自动识别压缩格式,并自动选择相应的工具进行解压缩 。
【Linux文件管理 linux课程】5.zip压缩和解压缩(理解)
1)zip压缩
命令:zip
功能:兼容unix和windows,可以压缩多个文件或目录 。
语法:# zip [parameter]压缩文件需要压缩文件(可以是多个文件)
选项:-r递归压缩(压缩文件夹)
注意:zip压缩默认的压缩格式是 。拉链 。当然也可以加上后缀 。zip,通常是添加的 。
用法:文件压缩
用法:zip压缩文件名要压缩的文件
示例代码:
#zip 1.zip 1.txt
含义:将1.txt压缩成1.zip
# zip 1 Dao 4 . zip 1 . txt 2 . txt 3 . txt 4 . txt
含义:将4个文件1.txt,2.txt,3.txt,4.txt压缩成1dao4.zip文件 。
用法:文件夹压缩
2)解压缩解压
命令:解压缩
功能:提取文件 。
语法:解压要解压的压缩文件[-d]解压目录
选项:-d,目录缩写,表示将文件解压到指定目录 。
用法:解压缩到当前目录 。
用法:解压到指定目录 。
Zip命令摘要
Zip被压缩
解压就是解压 。
#zip 3.zip 3.txt
#unzip 3.zip
#unzip 3.zip -d /tmp/
三 。VIM文件编辑器概述
Vim text editor是从vi发展而来的文本编辑器,使用简单,功能强大,是很多Linux发行版的默认文本编辑器 。
1.vi编辑器
Vi(可视化编辑器)编辑器通常简称为vi 。它是Linux和Unix系统上最基本的文本编辑器,类似于Windows系统上的记事本编辑器 。
2.vi和Vim编辑器
vim(Vi改进版)是Vi编辑器的增强版,比Vi好用 。几乎vi的所有命令都可以在vim上使用 。
3.Vim编辑器安装
Centos通常默认安装vi或Vim文本编辑器 。
当在命令行中输入“Vim”显示以下屏幕时,就认为Vim安装成功 。
如果在命令行模式下输入“vim”,输出结果是“Command not found”,则说明该系统中没有安装Vim 。
错误:找不到命令...
含义:找不到该命令,通常意味着没有安装该命令或者可能键入了错误的命令 。
如果没有,您可以通过以下命令安装它
#yum安装vim
yum的使用将在后面详细描述 。这里的每个人都默认安装了vim 。
4.Vim编辑器的四种工作模式
Vim中有四种模式:
命令模式
编辑模式(输入/插入模式)
可视化模式
最后一行模式(最后一行模式)
①命令模式:使用VIM编辑器时,默认为命令模式 。在这种模式下,可以通过快捷键移动光标位置,对文件内容进行复制、粘贴、删除等操作 。
②编辑模式:在此模式下,您可以编辑文件的内容 。
③最后一行模式:可以在最后一行输入命令,搜索、替换、保存、退出文件 。
④可视化模式:可以做一些列选择操作 。
四种模式之间的关系:
四 。Vim使用
1.Vim打开文件 。
命令:vim
角色:编辑文件
语法:vim文件名
用法:vim文件名
示例代码:
#vim 1.txt的含义:用vim编辑器,打开1.txt文件 。如果1.txt文件不存在,创建一个新的空文件1.txt,当您保存它并退出编辑器时,将自动创建该文件 。
2.Vim保存文件并退出 。
在任何模式下,您都可以按ESC键两次以返回命令模式 。在命令模式下,输入:wq并按enter键 。
3.Vim不保存文件并退出 。
在任何模式下,都可以按两次ESC键返回命令模式,并输入:Q!按回车键 。
4.Vim命令模式操作(重点)
4.1、光标快速移动 。
☆将光标移动到开头和结尾 。
将光标移动到文件第一行的开头,然后按gg 。
将光标移动到文件最后一行的开头,按G[Capslk+G]/[Shift+G]
#vim /var/log/boot.log-20200219
☆翻转屏幕
向上转动屏幕,并按ctrl+b(前)或PgUp 。
调低屏幕,并按ctrl+f(之后)或PgDn 。
将屏幕向上翻一半,然后按ctrl+u(向上)
将屏幕调低一半,然后按ctrl+d(向下)
☆快速导航到指定行(强调)
数字+G
150克
注意:经常用于错误定位 。
#vim /var/log/boot.log-20200219
4.2.复制
①复制光标线 。
关键:yy
粘贴:在要粘贴的地方按P键【粘贴到光标的下一行】 。如果您想将其粘贴到光标行之前,请使用P键 。
②按光标所在行(包括当前行)向下复制指定行数:数字yy,如5yy 。
#vim 1.txt输入如下,可以用来测试5yy,比较清楚 。
4.3.剪切/删除
①剪切/删除光标线 。
按键:dd(删除后下一行上移)
注意:dd严格来说是一个剪切命令,但是如果是剪切而不是粘贴,就会被删除 。
②剪切/删除光标行(包括当前行),向下删除/剪切指定行 。
键:数字dd(删除后下一行上移)
③剪切/删除当前光标所在行(光标所在行)后的内容,但删除后下一行不会上移 。
按下:D键(删除后,当前行将变成一条空白线)
4.4.撤销/恢复
撤消:u(撤消)
恢复:ctrl+r恢复(取消)之前的撤消操作[重做,重做]
5.Vim最后一行模式操作(重点)
5.1.进入最后一行模式 。
进入模式:从命令模式进入,按:或/(表示搜索)进入末行模式 。
退出模式:
①按Esc键 。
②按Esc键两次 。
③删除最后一行的所有输入字符 。
行模式有哪些功能?最后一行图案可以做什么?
5.2.与最后一行模式相关的功能
①保存操作(写)
输入::w保存文件(明白)
输入::w路径作为(已知)
②戒(戒)
回车::q退出文件(明白)
默认情况下,退出时需要保存修改后的文件:W再退出 。
③保存并退出(主控,常用)
输入::wq保存并退出 。
④强行(!(高手,常用)
回车::q!表示强制退出,刚做的修改不会保存 。
注意:以后我们在修改系统配置文件的时候,往往并不想保存之前的修改,甚至只是想检查一下,而不想修改 。这个时候总是用q!退出可以保证我们的档案不会被误改 。
⑤搜索/查找
Enter:/关键字,然后按Enter[按/也是进入末行模式的方式之一]
在搜索结果中切换上一个/下一个结果:N/n(大写N代表上一个结果,小写N代表下一个结果)
如果需要取消高亮,需要在最后一行模式下输入::noh【不高亮】 。
⑥更换(理解)
通常修改配置文件时,不建议你批量替换,以免替换一些未知内容 。
:s/ searched keyword/new content替换光标所在行中第一个符合条件的内容(仅一次)
:s/searched keywords/new content/g替换光标所在行中所有符合条件的内容 。
:%s/搜索到的关键字/新内容替换整篇文档每一行中第一个符合条件的内容 。
:% s/searched keywords/new content/g替换整个文档中所有符合条件的内容 。
⑦显示行号
Enter::设置nu,nu代表数字
如果要取消显示,请输入::set nonu
⑧设置粘贴和设置不粘贴(理解)
为什么使用粘贴模式?
问题:在终端Vim中粘贴代码时,发现插入的代码会有多余的缩进,会逐行累加 。原因是终端将粘贴的文本存储在键盘缓冲区中,Vim将这些内容视为用户的键盘输入 。遇到换行符时,如果Vim开启自动缩进,默认情况下会把上一行的缩进插入到下一行的开头,最终会把代码搞混 。
在粘贴数据之前,输入以下命令启动粘贴模式
:设置粘贴
粘贴后,输入以下命令关闭粘贴模式
:设置nopaste
6.编辑模式操作
6.1进入和退出编辑模式
按字母I进入编辑模式,按ESC退出编辑模式并返回命令模式 。
7.在视觉模式下复制 。
按键:ctrl+v(可见块)或V(可见线)或V(可见),然后按箭头键→
复制块,按Y键复制(不要按yy),最后按P键粘贴 。
退出可视模式并按Esc键 。
1).多行注释:
A.先按esc进入命令行模式,再按Ctrl+v进入列(也叫块)模式;
B.使用每行开头的向上和向下键选择多行进行注释;
C.按键盘(大写)的“I”键进入插入模式;
D.然后输入注释(" # ");
E.最后,按两次“Esc”键 。
2).删除多行注释:
A.先按esc进入命令行模式,再按Ctrl+v进入列模式;
B.选择要取消注释的行的第一列 。
C.按del键 。
8.Vim的一些实用功能
8.1、代码着色
之前有人说过vim是vi的升级版 。典型的区别是vim更适合编码,因为vim比vi多了一个代码着色的功能 。该功能主要为程序员提供编程语言升级的语法显示效果,如下:
#维姆·index.php
将以下内容添加到文件中:
末行模式输入:语法关语法开看效果 。
在实际应用中,我们如何控制是否显示底纹?
语法:语法,临时调整
Open::语法on
Close::语法关闭
8.2、异常退出
什么是异常退出:编辑完一个文件后,正常情况下不进入wq(保存退出),但是遇到终端突然关机或者断电,会显示以下效果 。这种情况称为异常退出:
解决方法:删除交换文件(编程过程中生成的临时文件)[在上面的提示界面中按D键或者使用rm指令删除交换文件]
8.3.退出模式
回顾:在vim中,您可以使用:Q或:wq来退出正在编辑的文件 。
除了上面的语法,vim还支持另一种保存和退出的方法(针对内容):x
描述:
① :x表示不修改文件直接退出(相当于:Q),修改文件保存退出(:wq) 。
②如果文件未被修改,但用wq退出,则更新文件的修改时间;但如果文件已经修改,用X退出,文件修改时间不会更新;主要是混淆了用户对文件修改时间的确定 。

    推荐阅读