Linux文件管理(超详细讲解)

简介: Linux文件管理(超详细讲解)

一、管理文件

1.目录和路径

文件与目录简介

文件是Linux操作系统用来存储信息的基本结构,是一组信息的集合。目录是一种特殊的文件,用来保存文件及其相关信息。所有的文件都会保存到目录中。

工作目录与用户主目录

(1)工作目录是用户当前所在的目录,他是可以随时改变的。

(2)用户主目录是用户登录成功后进入的默认目录,一般在“/home/用户名”目录下。

路径

通过“/”结合在一起的一个或多个目录及文件名的集合称为路径,路径又分为绝对路径和相对路径。绝对路径是指从根目录(/)开始的路径,如“/usr/local”。相对路径是相对于用户工作目录的路径,如“…/local”。

Linux操作系统中的特殊目录

特殊目录 含义
. 工作目录
. . 工作目录的上一级目录,也就是父目录
~ 用户主目录

2.目录操作命令

常用的目录操作包括创建目录(mkdir),删除空目录(rmdir),切换工作目录(cd),

查看当前目录(pwd),和列出目录内容(ls)等。

1.创建目录——mkdir命令

mkdir [-p] 目录名

“-p” 选项表示创建嵌套的多级目录树。如果不加“-p”选项,则只能在已经存在的目录下创建子目录。

创建目录

# 在当前目录下创建子目录“book”
[root@localhost ~]# mkdir book
# 在“package” 目录下创建子目录“mysql” 。如果“package” 目录不存在,则同时创建该目录
[root@localhost ~]# mkdir -p package/mysql

删除空目录——rmdir命令

rmdir [-p]  目录名

“-p”选项表示递归删除空目录。如果子目录删除后其父目录为空,则同时删除父目录。

删除空目录

# 在当前目录下删除 “package” 目录,由于 “package” 目录不存在 "mysql" 目录,
所以无法将其删除
[root@localhost ~]# rmdir package
rmdir:删除 'package' 失败:目录非空
# 在当前目录下删除 “package/mysql” 目录,执行命令后,子目录“mysql” 
和父目录“package” 同时被删除
[root@localhost ~]# rmdir -p package/mysql

切换工作目录——cd命令

cd [目录名]

常用的cd命令

命令 说明
cd 切换到户主目录
cd. . 切换到当前目录的上级目录
cd. ./. . 切换到当前目录的上两级目录
cd / 切换到根目录(/)

实例

[root@localhost ~]# cd /etc/rpm

查看当前工作目录——pwd命令

pwd

实例

[root@localhost ~]# pwd
/root

列出目录内容——ls命令

ls [选项] [文件或目录名]
选项 含义
-a 显示所有文件,包括以“.” 开头的隐藏文件
-l 以长格式显示文件的属性、大小详细信息
-d 仅显示目录本身的详细信息

3.文件操作命令

创建空命令——touch命令

touch [-d] 文件名

“-d” 选项表示设置文件的读取时间和修改时间。如果不加 “-d” 选项,表示创建一个空文件。

实例

在“book”目录下创建名为“poerty” 的文件,然后将文件的读取时间和修改时间设置为“2021年10月10日”。

[root@localhost ~]# touch book/poetry
[root@localhost ~]# touch -d 2021-10-10 book/poetry

查看文件类型——file命令

file 文件名

查看名为“initial-setup-ks.cfg”的文件类型

[root@localhost ~]# file initial-setup-ks.cfg
inital-setup-ks.cfg:ASCII text

复制文件或目录——cp命令

cp [选项] 源文件或目录名 目录文件或目录名

cp命令常用选项含义如下表

选项 含义
-r 递归复制整个目录树
-f 若目录文件已存在,则强制覆盖
-i 若目录文件已经存在,则询问用户是否覆盖
-p 文件的属性也一起复制
-d 若源文件为链接文件,则复制该链接文件属性

实例

在“book”目录下创建名为“literature”的目录,然后将“book”目录下的文件“poetry”复制到“book/literature”目录下。

[root@localhost ~]# mkdir book/literature
[root@localhost ~]# cp book/poetry book/literature

删除文件或目录——rm命令

rm [选项] 文件或目录名

rm常用选项含义

选项 含义
-r 递归整个目录树
-f 不询问用户,强制删除文件或目录
-i 删除文件或目录时询问用户是否删除

实例

删除文件“user_deng”并在删除时询问用户是否删除

[root@localhost ~]# rm -i user_deng

移动文件或目录——mv命令

mv [选项] 源文件或目录名 目录文件或目录名

mv常用命令含义

选项 含义
-f 不询问用户,强制移动文件或目录
-i 若目标文件或目录已经存在,则询问用户是否覆盖

实例

将“book”目录及其所有子目录和文件移动到根目录中

[root@localhost ~]# mv book /

查找文件或目录——find命令

find [查找范围] [查找条件]

find常用命令条件含义

查找条件 含义
-name 查找指定名称的文件
-size 查找指定大小的文件
-user 查找属于指定用户的文件
-group 查找属于指定用户组的文件
-type 查找指定类型的文件

实例

查找“/book” 目录下所有以"p"开头的问文件

[root@localhost ~]# find /book -name 'p*'
/book/poetry
/book/literature/poetry

查找命令的绝对路径——which命令

which 命令名

实例

查找pwd命令的绝对路径

[root@localhost ~]# which pwd
/bin/pwd

4.文件内容操作命令

显示文件全部内容——cut命令

cat [选项] 文件名

cat命令常用选项的含义

选项 含义
-n 显示行号
-b 显示非空行的行号

分屏显示文件内容——more命令和less命令

more [选项] 文件名

more常用选项如下表

按键 含义
Enter 向下移动一行
空格 向下翻动一页
b 向上翻动一页
q 退出more状态

与more命令相同,less命令也用于分屏显示文件内容,其格式入下

less [选项] 文件名

显示文件开始内容——head命令

head [-n] 文件名

显示文件末尾内容——tail内容

tail [选项] 文件名
选项 含义
-n 显示文件后的n行,默认显示后10行
-f 命令超过文件的末端后,继续尝试读取更多的文件内容

实例

显示文件“book/poetry”的后两行

[root@localhost ~]# tail -2 /book/poetry

统计文件内容——wc命令

wc [选项] 文件名列表

wc常用选项含义

选项 含义
-l 统计行数
-w 统计单词数
-c 统计字节数

实例

统计文件“/book/poetry”的行数,单词数和字节数

[root@localhost ~]# wc -lwc /book/poetry

查找文件中符合条件的行——grep命令

grep [选项] 查找条件 目标文件名

grep常用命令选项

选项 含义
-i 查找时忽略大小写
-v 反转查找,输出与查找条件不相符的行
-n 在显示符合的字符串之前,标出该行行号

查找文件“/etc/hosts”中包含"localhost6"的行,并标出该行行号。

[root@localhost ~]# grep -n 'localhost6' /etc/hosts
相关文章
|
27天前
|
弹性计算 人工智能 架构师
阿里云携手Altair共拓云上工业仿真新机遇
2024年9月12日,「2024 Altair 技术大会杭州站」成功召开,阿里云弹性计算产品运营与生态负责人何川,与Altair中国技术总监赵阳在会上联合发布了最新的“云上CAE一体机”。
阿里云携手Altair共拓云上工业仿真新机遇
|
3天前
|
人工智能 Rust Java
10月更文挑战赛火热启动,坚持热爱坚持创作!
开发者社区10月更文挑战,寻找热爱技术内容创作的你,欢迎来创作!
372 16
|
19天前
|
存储 关系型数据库 分布式数据库
GraphRAG:基于PolarDB+通义千问+LangChain的知识图谱+大模型最佳实践
本文介绍了如何使用PolarDB、通义千问和LangChain搭建GraphRAG系统,结合知识图谱和向量检索提升问答质量。通过实例展示了单独使用向量检索和图检索的局限性,并通过图+向量联合搜索增强了问答准确性。PolarDB支持AGE图引擎和pgvector插件,实现图数据和向量数据的统一存储与检索,提升了RAG系统的性能和效果。
|
6天前
|
JSON 自然语言处理 数据管理
阿里云百炼产品月刊【2024年9月】
阿里云百炼产品月刊【2024年9月】,涵盖本月产品和功能发布、活动,应用实践等内容,帮助您快速了解阿里云百炼产品的最新动态。
阿里云百炼产品月刊【2024年9月】
|
21天前
|
人工智能 IDE 程序员
期盼已久!通义灵码 AI 程序员开启邀测,全流程开发仅用几分钟
在云栖大会上,阿里云云原生应用平台负责人丁宇宣布,「通义灵码」完成全面升级,并正式发布 AI 程序员。
|
23天前
|
机器学习/深度学习 算法 大数据
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
2024“华为杯”数学建模竞赛,对ABCDEF每个题进行详细的分析,涵盖风电场功率优化、WLAN网络吞吐量、磁性元件损耗建模、地理环境问题、高速公路应急车道启用和X射线脉冲星建模等多领域问题,解析了问题类型、专业和技能的需要。
2594 22
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
|
5天前
|
存储 人工智能 搜索推荐
数据治理,是时候打破刻板印象了
瓴羊智能数据建设与治理产品Datapin全面升级,可演进扩展的数据架构体系为企业数据治理预留发展空间,推出敏捷版用以解决企业数据量不大但需构建数据的场景问题,基于大模型打造的DataAgent更是为企业用好数据资产提供了便利。
182 2
|
3天前
|
编译器 C#
C#多态概述:通过继承实现的不同对象调用相同的方法,表现出不同的行为
C#多态概述:通过继承实现的不同对象调用相同的方法,表现出不同的行为
105 65
|
7天前
|
Linux 虚拟化 开发者
一键将CentOs的yum源更换为国内阿里yum源
一键将CentOs的yum源更换为国内阿里yum源
332 2
|
23天前
|
机器学习/深度学习 算法 数据可视化
【BetterBench博士】2024年中国研究生数学建模竞赛 C题:数据驱动下磁性元件的磁芯损耗建模 问题分析、数学模型、python 代码
2024年中国研究生数学建模竞赛C题聚焦磁性元件磁芯损耗建模。题目背景介绍了电能变换技术的发展与应用,强调磁性元件在功率变换器中的重要性。磁芯损耗受多种因素影响,现有模型难以精确预测。题目要求通过数据分析建立高精度磁芯损耗模型。具体任务包括励磁波形分类、修正斯坦麦茨方程、分析影响因素、构建预测模型及优化设计条件。涉及数据预处理、特征提取、机器学习及优化算法等技术。适合电气、材料、计算机等多个专业学生参与。
1580 17
【BetterBench博士】2024年中国研究生数学建模竞赛 C题:数据驱动下磁性元件的磁芯损耗建模 问题分析、数学模型、python 代码