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
  • 42
    点赞
  • 48
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 15
    评论
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小强在此

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值