行业知识
Linux文件管理(超详细讲解)
Linux文件管理
- 一、管理文件
- 1.目录和路径
- 2.目录操作命令
- 3.文件操作命令
- 4.文件内容操作命令
一、管理文件
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 packagermdir:删除 '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.cfginital-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