文章目录
Linux管理文件系统命令
① 工作目录切换类命令
一、pwd:显示当前用户所在的工作目录
pwd [选项]
[root@ecs-168546 etc]# pwd
/etc
二、 cd:切换路径
cd [目录名称]
//可以使用“cd 路径”的方式切换进/etc 目录中:
[root@localhost ~]# cd /etc
[root@localhost etc]
- home用户主目录
- 切换上级目录
cd ..
- 返回上一次目录
cd -
- cd 路径
- cd ~
三、 ls:显示目录中的文件信息
ls [选项][文件]
- -a:可以查看所有的文件,包括隐藏文件。
- -l:(等于ll命令)可以查看文件的属性、大小等信息(不包含隐藏文件)。
- -ld:查看目录本身的权限信息
② 使用文本文件
一、vim:编辑文本文件
vim 文件名
- esc退出编辑
- 退出:esc + : + q
- 退出且不保存 :q!
- 保存并退出 :wq
- 强制保存退出 :wq!
- 保存并退出 😡
- 保存并退出 :exit
- 退出所有 :qa
- 退出且不保存 :cq
- 编辑
- 复制光标所在行(复制多少行,就在后面加数字):yy
- 剪切光标所在行(剪切多少行,就在后面加数字):dd
- 粘贴:p
- 查找:?字符串(从下到上) | /字符串(从上到下)
- i:插入
- o:换行
二、cat:查看文本文件
cat [选项] [文件]
-n:显示行数
三、more:查看内容较多的文件
more [参数选项] [文件] //用空格或回车查看后面内容
- 使用空格翻页
- enter换行
四、head:查看文件的前n行
head [选项] [文件]
//查看前20行
head -n 20 /etc/profile
五、tail:查看文件后n行内容
tail [选项] [文件]
- -n 行数 文件名:查看文件后n行内容
//使用tail命令查看文件anaconda-ks.cfg后 20 行的内容
[root@localhost ~]# tail -n 20 anaconda-ks.cfg
- -f 文件名: 查看最新日志文件
[root@localhost ~]# tail -f /var/log/messages
六、wc:统计文件行数、字数、字节数
wc [参数] 文本
- -l: 只显示行数
- -w: 只显示单词数
- -c: 只显示字节数
七、 less:允许用户向前或向后浏览文件
less [选项] [文件]
③ 目录操作类命令
一、mkdir:创建空白目录
mkdir [选项] [目录]
- 创建三个文件夹,c是b的子文件夹,b是a的子文件夹
mkdir -p a/b/c
二、rmdir:删除一个空目录
rmdir [选项][目录]
- -p : 递归删除多层级空目录
④ 文件操作类命令
一、rm:删除文件、文件夹
rm [选项] [文件]
-r 递归删除目录
- -f 忽略提示信息
- -i 删除前逐一询问
二、touch:创建空文件或设置文件时间
touch [选项] [文件]
- -a:仅修改读取时间
- -m:仅修改修改时间
- -d:修改atime与mtime
三、cp:复制文件或目录
cp [选项] 源文件 路径/目标文件
-r: 递归持续复制(用于目录),复制目录中内容
- 如果目标文件是目录,则会把源文件复制到该目录中;
-i: 若目标文件存在则询问是否覆盖
- 如果目标文件不存在,则执行正常的复制操作。
-f,–force: 强行复制文件或目录,不论目标文件或目录是否已存在;root路径下,会进行询问
-a:通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合
- -p: 保留原始文件的属性
- -d: 若对象为“链接文件”,则保留该“链接文件”的属性
四、mv:剪切文件或将文件重命名
① 剪切文件
mv [选项] 源文件 [ 目标路径|目标文件名]
② 重命名
五、diff:比较多个文本文件的差异
diff [参数] 文件1 文件2
① –brief:比较两个文件是否相同,相同无提示,不同有提示
② -c:显示文本相同与不同的地方
六、dd:指定大小和个数的数据块来复制文件或转换文件
dd [参数]
- if 输入的文件名称
- of 输出的文件名称
- bs 设置每个“块”的大小
- count 设置要复制“块”的个数
七、ln:创建链接文件
ln命令用来为文件创建链接,链接类型分为硬链接和符号链接两种,默认的链接类型是硬链接。
如果要创建符号链接必须使用”-s”选项。
符号链接文件不是一个独立的文件,它的许多属性依赖于源文件,所以给符号链接文件设置存取权限是没有意义的。
1. 软链接
- 以路径的形式存在。类似于Windows操作系统中的快捷方式
- 可以跨文件系统 ,硬链接不可以
- 可以对一个不存在的文件名进行链接
- 可以对目录进行链接
2. 硬链接
- 以文件副本的形式存在。但不占用实际空间。
- 不允许给目录创建硬链接
- 只有在同一个文件系统中才能创建
创建硬链接
ln [选项] 目标
-s 创建“符号链接(软链接)”
ln -s 文件 目标文件
-v 显示创建链接的过程
- -f 强制创建文件或目录的链接
- -i 覆盖前先询问
八、vi:创建新文件,并自动进入编辑模式
vi 文件名
⑤ 使用压缩解压命令
一、tar:用来建立,还原备份文件
tar [选项...] [FILE]
- -c: 创建新的文档
- -v: 显示详细的tar处理的文件信息
- -f: 要操作的文件名, 切记,这个参数是最后一个参数
- -x: 解压
- -t: 查看内容
- -z: 有gzip属性的
- -j: 有bz2属性的
- -r: 表示增加文件,把要增加的文件追加在压缩文件的末尾
①
-cvf
将源目录打包成目标文件名.tar
tar -cvf 目标文件名.tar 源目录
②
-rvf
将追加的目录压缩到目标文件名.tar中
tar -rvf 目标文件名.tar 追加的目录
③**-tvf** 查看tar文件内容
④**-xvf**
⑤
-czvf
打包并压缩成gz格式
⑥**-xzvf**
二、gzip:在文件后加上.gz后缀并将源文件删除
gzip [参数] [文件]
- -c:指定输出并保留源文件
三、gunzip:解压缩gzip格式文件
gunzip [参数] [文件]
- -l: 创建新的文档
- -d: 指定文件解压缩后所要存储的目录。
- -f: 要操作的文件名, 切记,这个参数是最后一个参数
四、zip:压缩文件
zip [参数] [打包后的文件名] [打包的目录路径]
- -r; 递归压缩子目录下所有文件,不然只压出来一个空目录
- -y: 保持符号链接,而不用把符号链接指向的文件也压进来
- -f: 要操作的文件名, 切记,这个参数是最后一个参数
五、unzip:解压缩zip文件
unzip [参数] file[.zip]
- -l: 创建新的文档
- -d: 指定文件解压缩后所要存储的目录。
- -f: 要操作的文件名, 切记,这个参数是最后一个参数
⑥ 使用查找类命令
一、which:用来查找系统PATH目录下的可执行文件命令所在的位置
which [参数] 命令名称
//查找命令cd所在的位置
[root@localhost ~]# which cd
/usr/bin/cd
二、 whereis:寻找二进制程序、源代码文件和man手册页等相关文件的路径
三、locate:查找文件或目录
locate [参数]... [PATTERN]
//搜索etc目录下所有以my开头的文件
[root@localhost ~]# locate /etc/my
/etc/my.cnf
/etc/my.cnf.d
四、find:按照指定条件来查找文件
find [查找路径] 寻找条件 [操作]
- -name: 匹配名称
- -perm: 匹配权限(mode 为完全匹配, -mode 为包含即可)
- -user 匹配所有者
- -group 匹配所有组
- -mtime -n +n :匹配修改内容的时间(-n 指 n 天以内, +n 指 n 天以前)
- -atime -n +n :匹配访问文件的时间(-n 指 n 天以内, +n 指 n 天以前)
- -ctime -n +n : 匹配修改文件权限的时间(-n 指 n 天以内, +n 指 n 天以前)
- -nouser; 匹配无所有者的文件
- -nogroup: 匹配无所有组的文件
- -newer f1 !f2: 匹配比文件 f1 新但比 f2 旧的文件
- –type b/d/c/p/l/f : 匹配文件类型(后面的字母参数依次表示块设备、目录、字符设备、管道、链接文件、普通文件)
- -size 匹配文件的大小
- -prune 忽略某个目录
⑦ 修改文件权限
一、chmmo:修改文件或者目录的权限
chmod [选项] 模式[,模式] 文件
- -R, –recursive: 以递归方式更改所有的文件及子目录;
- –version: 显示版本信息;
文件的隐藏属性
一、chattr:设置文件的隐藏权限
chattr [参数] 文件
- 如果想要把某个隐藏功能添加到文件上,则需要在命令后面追加“+参数”
- 如果想要把某个隐藏功能移出文件,则需要追加“-参数”
- i: 无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件
- a: 仅允许补充(追加)内容,无法覆盖/删除内容
- S: 文件内容在变更后立即同步到硬盘
- s: 彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域)
- A: 不再修改这个文件或目录的最后访问时间
- b: 不再修改文件或目录的存取时间
- D: 检查压缩文件中的错误
- d: 使用dump命令备份时忽略本文件/目录
- c: 默认将文件或目录进行压缩
- u: 当删除该文件后依然保留其在硬盘中的数据,方便日后恢复
- t: 让文件系统支持尾部合并
- X: 可以直接访问压缩文件中
二、lsattr:显示文件的隐藏权限
lsattr [参数] 文件
⑧ 修改文件所有者及所属组
一、chown:用于文件或者文件夹宿主及属组的修改
chown [选项] 用户[:或.组] 文件或目录
① 修改所有者或组
//将test宿主改为linuxprobe
[root@host root]# chown linuxprobe test
② 将目录本身及其以下的所有目录和文件的属主修改
chown -R 用户[:或.组] 目录