Linux文件管理(文件/目录的创建、更改、删除)

这篇具有很好参考价值的文章主要介绍了Linux文件管理(文件/目录的创建、更改、删除)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、Linux文件命名规则

1.严格区分大小写

2.文件命名不能使用字符"/"

3.目录或文件名的长度不能超过255个字符
建议:
(1)文件名由两个或两个以上单词组成时,尽量使用"_"来代替space键
(2)尽量不用字母的大小写来区分文件或者目录
4.Linux的文件扩展名在Linux的操作系统中没有意义。换句话说,Linux系统并不以文件的扩展名来区分文件的类型。(比如yunwei.exe在Windows系统代表可执行文件,但在Linux中不一定能够执行)

二、Linux目录管理

(一)目录创建

创建目录的命令

mkdir [选项] 目录名称
	-p :表示递归创建

案例1:在/root目录下创建目录test

mkdir /root/test
或
cd root
mkdir test

案例2:在root目录下创建shop目录,在shop目录下创建shop1目录,在shop1目录下创建shop2目录

mkdir -p /root/shop/shop1/shop2
#shop2的路径为/root/shop/shop1/shop2

案例3:在root目录下同时创建t1,t2,t3目录

mkdir t1 t2 t3

(二)删除目录

删除目录的命令

rmdir [选项] 目录名称
	-p : 表示递归删除
注意:仅能删除空目录

案例1:删除root目录下的test目录

rmdir /root/test
或
cd root
rmdir test

案例2:删除root目录下的shop目录

cd root
rmdir -p shop/shop1/shop2

案例3:同时删除root目录下的t1,t2,t3目录

cd root
rmdir t1 t2 t3

三、文件管理

(一)文件创建

文件创建命令

touch 文件名称

案例:在root目录下,同时创建1.txt 2.txt 3.txt 三个文件

cd root
touch t1.txt t2.txt t3.txt
或
touch t{1..3}.txt
或
touch root/t1.txt root/t2.txt root/t3.txt

(二)文件删除

文件删除命令

rm [选项] 文件/目录
	-r:表示递归,主要针对目录
	-f:强制删除

案例1:删除1.txt 2.txt 3.txt 三个文件

rm 1.txt 2.txt 3.txt 
此时系统会提示
rm: remove regular file ‘1.txt’? 
输入y确定,输入n取消
如果使用命令
rm -f 1.txt 2.txt 3.txt 
此时系统不会提示,直接删除

案例2:test.txt文件的路径为/test/test.txt,删除test文件夹

rm -r test
或
rm -rf test

四、文件的复制与剪切

(一)文件的复制

文件复制命令

cp [选项] 文件/目录
	-r:表示递归

案例1:复制文件test.txt到父目录中的shop目录下

cp test.txt ../shop

案例2:复制文件夹test到父目录中的teacher目录下

cp -r test ../teacher

特别的,命令cp也可以在复制后为文件/目录重新命名
例如,将文件test.txt复制到父目录中的shop目录下并命名为test1.txt

cp test.txt ../shop/test1.txt

(二)文件的剪切

文件剪切的命令

mv 文件/目录名 目的地路径

案例:将目录test移动到/root/etc目录下

mv test /root/etc

特别的,在同一目录下,命令mv也可以为文件/目录重命名
例如,将1.txt文件重命名为2.txt

mv 1.txt 2.txt

五、文件压缩与解压缩

(一)文件的打包

一般情况下,Linux系统中只能对单个文件进行压缩,那么对于多文件或者文件夹就需要对其进行打包后再压缩。文件打包命令:

tar [选项] 文件打包后名称.tar 多个文件或文件夹
	-c :打包
	-f :filename,打包后的文件名称
	-v :显示打包的进度
	-u :update缩写,更新原打包文件中的文件(了解)
	-t :查看打包的文件内容(了解)

案例1:将文件a.txt、b.txt、c.txt打包到abc.tar

tar -cvf abc.tar a.txt b.txt c.txt

案例2:将文件wechat打包到wechat.tar

tar -cvf wechat.tar wechat

案例3:将文件d.txt添加到abc.tar

如果想要往tar包添加内容可以使用tar -uf命令
tar -uf abc.tar d.txt

案例4:查看abc.tar内容

tar -tf abc.tar

如果想要释放tar包应该怎么办?
可以使用命令

tar -xf 

例如将abc.tar释放

tar -xf abc.tar

(二)文件的压缩

常用的文件压缩工具有
gzip(.gz)、bzip2(.bz2)、XZ(.xz)
一般来说在压缩率上gzip<bzip2<XZ,但在压缩速度上gzip>bzip2>XZ

文件压缩命令

tar [选项] 压缩后的文件名 即将要压缩的文件
	-zcf:使用gzip工具压缩[.gz]
	-jcf:使用bzip2工具压缩[.bz2]
	-Jcf:使用XZ工具压缩[.XZ]

案例 :压缩shop.tar包

tar -zcf shop.tar.gz shop.tar
或
tar -jcf shop.tar.bz2 shop.tar
或
tar -Jcf shop.tar.xz shop.tar

文件解压缩命令

tar [选项] 需要解压缩的文件
	-zxf:使用gzip工具解压缩
	-jxf:使用bzip2工具解压缩
	-Jxf:使用XZ工具解压缩

案例:将文件shop.tar.gz解压缩

tar -zxf shop.tar.gz

拓展:ZIP压缩工具

使用zip工具压缩文件

zip [选项] 压缩后的文件名(.zip) 需要压缩的文件
	-r:表示递归,用于文件夹
案例:压缩文件shop
#zip -r shop.zip shop

使用unzip命令解压文件

unzip 压缩包名称
案例:解压文件shop.zip到/root/etc
unzip shop.zip -d /root/etc

如果使用zip工具时需要指定解压路径,可以使用参数“d"来选择路径

六、文件的查看

一般来说,我们可以使用ls命令来查看一个目录下的文件或者文件夹的一些信息。

ls [选项] 文件/目录
	-l:详细显示/以列表形式显示 (ls -l可以缩写为ll)
	-a:显示隐藏文件或目录
	-d:指定显示某个文件或目录

但是如果对于需要查看某个文件里面的信息,又不想打开文件,ls命令显然不能适用,就可以用到以下几个命令。

cat 文件名 :正序查看文件的内容
tac 文件名 :倒序查看文件的内容
head -n :查看文件的前n行内容
tail -n :查看文件的后n行内容
	 [-n:表示数字,如果没有使用参数n,则默认为查看10行]

拓展(了解):

tail -f :一般用于查看日志文件

对于一些大型文件,使用cat命令就不太合适,这时可以使用more/less命令。
分屏显示文件内容
1.more命令

more 文件名称
	1)enter键:向下一行
	2)D:向下半页
	3)space键:向下一页
	4)b:向上一页
	5)q:退出
tips:more命令在显示内容时已经将文件加载完毕后再展示,对于较大的文件可能卡顿

2.less命令(重点)

less 文件名
	1)enter键:向下一行
	2)d:向下半页
	3)space键:向下一页
	4)上下左右方向键可以使用
	5)b:向上一页
	6)q:退出
	7)输入”/"可以查找内容

使用less命令查看文件并显示行号

less -N 文件名

七、文件统计与查找

(一)文件统计命令

使用wc命令统计文件的行数、单词数、字节数等

wc [选项] 文件名
	-l:line,显示文件行数
	-w:words,显示字符数
	-c:显示字节数
拓展:
一般来说,一个数字/字母/字符===一个字节
中文与编码格式有关,在utf-8字符集中,一个汉字==3个字节

使用du命令统计文件/目录的大小

du [选项] 文件/目录
	-----分别显示目录中各个文件或者文件夹的大小,不带单位
	-s:显示汇总后的文件大小
	-h:显示文件大小的同时会附带单位

(二)文件的查找

1.find命令,查找一个文件或目录时必须用到的命令

find 需要查找的文件的绝对路径 -name "文件名称“ -type [f/d]
	-name:文件名称,支持使用通配符”*“
	-type:文件的类型,其中f表示文件,d表示目录,如果不知道时文件或目录,可以不选

2.grep命令,用于在文件中查找关键词并且高亮显示

grep [选项] 关键词
	-n:显示关键词时同时显示其所在的行号

八、vi/vim

vi(visual editor)编辑器通常被简称为vi,它是Linux和Unix系统上最基本的文本编辑器,类似于Windows
系统下的notepad(记事本)编辑器。
Vim(Vi improved)是vi编辑器的加强版,比vi更容易使用。vi的命令几乎全部都可以在vim上使用。
因此,建议使用vim进行编辑。

yum install vim
#vim需要安装

(一)四种模式

命令模式
编辑模式(输入/插入模式)
可视化模式
末行模式(尾行模式)

①命令模式:使用VIM编辑器时,默认处于命令模式。在该模式下可以移动光标位置,可以通过快捷键对文件
内容进行复制、粘贴、删除等操作。
②编辑模式:在该模式下可以对文件的内容进行编辑
③末行模式:可以在末行输入命令来对文件进行查找、替换、保存、退出等操作
④可视化模式:可以做一些列选操作
一张图看明白四种模式的切换
在root目录下创建目录,Linux,linux,运维文章来源地址https://www.toymoban.com/news/detail-730562.html

(二)vim命令模式

用vim编辑器,打开1.txt文件,如果1.txt文件不存在,则新建一个空文件1.txt,保存退出编辑器时会自动创
建这个文件
———————————————————————————————————————————————————
在任何模式下,都可以按两下ESC回到命令模式,在命令模式输入:wq 按回车键保存并退出;q! 按回车键不保存退出
———————————————————————————————————————————————————
光标移动到文件第一行的行首,按键: gg
光标移动到文件最后一行的行首,按键:G [Capslk 再加 G 键] / [Shift + G 键]
快速定位到指定行(重点):数字 + G //150G
———————————————————————————————————————————————————
向上 翻屏,按键: ctrl + b (before) 或 PgUp
向下 翻屏,按键: ctrl + f (after) 或 PgDn
向上翻半屏,按键: ctrl + u (up)
向下翻半屏,按键: ctrl + d (down)
———————————————————————————————————————————————————
① 复制光标所在行
按键:yy
粘贴:在想要粘贴的地方按下p 键【将粘贴在光标所在行的下一行】,如果想粘贴在光标所在行之前,则使用P键
② 以光标所在行为准(包含当前行),向下复制指定的行数
按键:数字yy,如5yy
———————————————————————————————————————————————————
① 剪切/删除光标所在行
按键:dd (删除之后下一行上移)
注意:dd 严格意义上说是剪切命令,但是如果剪切了不粘贴就是删除的效果。
② 剪切/删除光标所在行为准(包含当前行),向下删除/剪切指定的行
按键:数字dd ;如5dd
③ 剪切/删除光标所在的当前行(光标所在位置)之后的内容,但是删除之后下一行不上移
按键:D (删除之后当前行会变成空白行)
———————————————————————————————————————————————————
撤销:u(undo)
恢复:ctrl + r 恢复(取消)之前的撤销操作【重做,redo】

(三)vim末行模式

进入方式:由命令模式进入,按下 : 或者 / (表示查找)即可进入
———————————————————————————————————————————————————
保存操作(write)
输入: :w 保存文件 (了解)
输入: :w 路径 另存为(了解);如w /root/test.txt
———————————————————————————————————————————————————
输入: :q 退出文件(了解)
输入: :wq 保存并且退出
输入: :q! 表示强制退出,刚才做的修改操作不做保存
———————————————————————————————————————————————————
输入: /关键词 ,再按下回车 【按下/也是进入末行模式的方式之一】
在搜索结果中切换上/下一个结果:N/n (大写N代表上一个结果,小写n代表next)
如果需要取消高亮,则需要在末行模式中输入: :noh 【no highlight】
———————————————————————————————————————————————————
:s/搜索的关键词/新的内容 	替换光标所在行的第一处符合条件的内容(只替换1次)
:s/搜索的关键词/新的内容/g 	替换光标所在行的全部符合条件的内容
:%s/搜索的关键词/新的内容 	替换整个文档中每行第一个符合条件的内容
:%s/搜索的关键词/新的内容/g 替换整个文档中所有符合条件的内容
———————————————————————————————————————————————————
显示行号: :set nu ,nu代表number
如果想取消显示,则输入: :set nonu
———————————————————————————————————————————————————
为什么要使用paste模式?
问题:在终端Vim中粘贴代码时,发现插入的代码会有多余的缩进,而且会逐行累加。原因是终端把粘贴的文本存
入键盘缓存(Keyboard Buffer)中,Vim则把这些内容作为用户的键盘输入来处理。导致在遇到换行符的时候,
如果Vim开启了自动缩进,就会默认的把上一行缩进插入到下一行的开头,最终使代码变乱。
在粘贴数据之前,输入下面命令开启paste模式
:set paste
粘贴完毕后,输入下面命令关闭paste模式
:set nopaste

(四)可视化模式

按键:ctrl + v(可视块)或V(可视行)或v(可视),然后按下↑ ↓ ← →方向键来选中需要
复制的区块,按下y 键进行复制(不要按下yy),最后按下p 键粘贴
退出可视模式按下Esc
———————————————————————————————————————————————————
多行注释:
a.首先按esc进入命令行模式下,按下Ctrl + v,进入列(也叫区块)模式;
b.在行首使用上下键选择需要注释的多行;
c.按下键盘(大写)“I”键,进入插入模式;
d.然后输入注释符(“#”);
e.最后按两下“Esc”键。
———————————————————————————————————————————————————
删除多行注释:
a.首先按esc进入命令行模式下,按下Ctrl + v, 进入列模式;
b.选定要取消注释的多行的第一列
c.按del键即可

(五)Vim的一些实用功能:代码着色

为vim比vi 多一个代码着色的功能,这个功能主要是为程序员提供编程语言升的语法显示效果:
在实际应用中,我们如何控制着色显示与否?
开启显示: :syntax on
关闭显示: :syntax off

到了这里,关于Linux文件管理(文件/目录的创建、更改、删除)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux rm命令:删除文件或目录

    当 Linux 系统使用很长时间之后,可能会有一些已经没用的文件(即垃圾),这些文件不但会消耗宝贵的硬盘资源,还是降低系统的运行效率,因此需要及时地清理。 rm 是强大的删除命令,它可以永久性地删除文件系统中指定的文件或目录。在使用 rm 命令删除文件或目录时,

    2024年02月07日
    浏览(42)
  • Linux :: 【基础指令篇 :: 文件及目录操作:(6)】:: rmidr / rm:删除空目录、删除非空目录及删除文件指令

    前言:本篇是 Linux 基本操作篇章的内容! 笔者使用的环境是基于腾讯云服务器:CentOS 7.6 64bit。 学习集: C++ 入门到入土!!!学习合集 Linux 从命令到网络再到内核!学习合集 目录索引: 1. rmdir / rm 基本语法及功能 2. rmdir 基本使用测试 (看操作代码) - - 2.1 创建一个空目录

    2024年02月05日
    浏览(34)
  • Linux修改目录文件的属主(属组)命令、设置宿主目录并删除原来宿主目录

    1.属主(属组)的目的: 2.属主(属组)的用处: 3.修改属主和属组的用途: 1. 权限控制: 2. 用户管理: 3. 文件管理: 4.修改目录或文件的属主和属组的命令: 1. chown命令: 2. chgrp命令: 5.设置宿主目录并删除原来宿主目录: 1.设置宿主目录的原因: 1. 数据持久性: 2. 共享数

    2024年02月09日
    浏览(37)
  • Jtti:linux删除文件夹命令和目录命令是什么?

    在Linux中,删除文件和目录是每个用户都必须知道的基本操作。尽管这似乎是一项简单的任务,但删除文件和目录的方法多种多样,每种方法都有其特定的用例。在本教程中,小编将给大家分析一下linux删除文件夹命令和目录命令是什么? 一、linux删除文件夹命令是什么? 删除文

    2024年02月10日
    浏览(47)
  • 【linux】搜索所有目录和子目录下的包含.git的文件并删除

    在Linux系统中,要搜索所有目录和子目录下的包含`.git`的文件,可以使用`find`命令。`find`命令允许指定路径、表达式和操作来查找文件。 以下是使用`find`命令搜索包含`.git`的文件的方法: 1. 基本搜索:    find /path/to/search -type f -name \\\"*.git*\\\"    这将在指定的路径下搜索所有扩

    2024年03月22日
    浏览(73)
  • Linux :: 【基础指令篇 :: 文件及目录操作:(4)】:: mkdir :: 创建目录:指定路径单个目录创建及一次性创建多级目录

    前言:本篇是 Linux 基本操作篇章的内容! 笔者使用的环境是基于腾讯云服务器:CentOS 7.6 64bit。 学习集: C++ 入门到入土!!!学习合集 Linux 从命令到网络再到内核!学习合集 目录索引: 1. 基本语法及功能 2. 基本使用示例 - - 2.1 当前目录下创建指定新目录 - - 2.2 指定目录下

    2024年02月06日
    浏览(45)
  • Linux 下 普通用户创建文件(目录)权限不足问题

     原因:                 执行此操作的用户对上级目录 缺乏相应权限 上图中的上级目录为 test2 ,查看权限如下,其他用户的权限为  r-x(读和执行)   ,要在其下创建新文件还需要 写(w) 的权限  解决问题:修改test权限为 drwxr-x rwx        命令: chmod 757 test2 需要注

    2024年02月11日
    浏览(38)
  • linux中根据文件的创建时间批量删除文件

    在Ubuntu上,你可以使用`find`命令来根据时间批量删除图片。以下是具体的步骤: 1. 打开终端(Terminal)。 2. 使用以下命令进入你希望删除文件的目录: 将`/path/to/directory`替换为实际存放文件的目录路径。 3. 使用以下命令找到符合条件的文件: 上述命令会列出 当前目录及其子

    2024年02月10日
    浏览(28)
  • Linux 文件 & 目录管理 & 链接

                 Linux 系统是一种典型的多用户系统,为了保护系统的安全性,不同的用户拥有不同的地位和权限。Linux 系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。              可以使用命令:ll 或 ls –l 来显示一个文件的属性以及文件所属

    2024年02月07日
    浏览(27)
  • Linux 文件与目录管理

    我们知道 Linux 的目录结构为树状结构,最顶级的目录为根目录 /。 其他目录通过挂载可以将它们添加到树中,通过解除挂载可以移除它们。 在开始本教程前我们需要先知道什么是绝对路径与相对路径。 绝对路径: 路径的写法,由根目录 / 写起,例如: /usr/share/doc 这个目录

    2024年02月13日
    浏览(27)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包