Linux管理文件系统命令——Linux(一)

  • Post author:
  • Post category:linux


文章目录



Linux管理文件系统命令



① 工作目录切换类命令



一、pwd:显示当前用户所在的工作目录

pwd  [选项]
[root@ecs-168546 etc]# pwd
/etc



二、 cd:切换路径

cd   [目录名称]
//可以使用“cd  路径”的方式切换进/etc 目录中: 
[root@localhost ~]# cd  /etc
[root@localhost etc]
  1. home用户主目录
  2. 切换上级目录
cd ..
  1. 返回上一次目录
cd -
  1. cd 路径
  2. cd ~



三、 ls:显示目录中的文件信息

ls [选项][文件]
  1. -a:可以查看所有的文件,包括隐藏文件。
  2. -l:(等于ll命令)可以查看文件的属性、大小等信息(不包含隐藏文件)。
  3. -ld:查看目录本身的权限信息



② 使用文本文件



一、vim:编辑文本文件

vim 文件名 
  • esc退出编辑
  1. 退出:esc + : + q
  2. 退出且不保存 :q!
  3. 保存并退出 :wq
  4. 强制保存退出 :wq!
  5. 保存并退出 😡
  6. 保存并退出 :exit
  7. 退出所有 :qa
  8. 退出且不保存 :cq
  • 编辑
  1. 复制光标所在行(复制多少行,就在后面加数字):yy
  2. 剪切光标所在行(剪切多少行,就在后面加数字):dd
  3. 粘贴:p
  4. 查找:?字符串(从下到上) | /字符串(从上到下)
  5. i:插入
  6. o:换行



二、cat:查看文本文件

cat  [选项]  [文件]


-n:显示行数




三、more:查看内容较多的文件

more [参数选项] [文件]  //用空格或回车查看后面内容
  • 使用空格翻页
  • enter换行



四、head:查看文件的前n行

head  [选项]   [文件]
//查看前20行
head -n 20 /etc/profile



五、tail:查看文件后n行内容

tail [选项] [文件]
  1. -n 行数 文件名:查看文件后n行内容
//使用tail命令查看文件anaconda-ks.cfg后 20 行的内容 
[root@localhost ~]# tail -n 20  anaconda-ks.cfg
  1. -f 文件名: 查看最新日志文件
[root@localhost ~]# tail -f /var/log/messages



六、wc:统计文件行数、字数、字节数

wc [参数] 文本
  1. -l: 只显示行数
  2. -w: 只显示单词数
  3. -c: 只显示字节数



七、 less:允许用户向前或向后浏览文件

less  [选项]  [文件]



③ 目录操作类命令



一、mkdir:创建空白目录

mkdir [选项] [目录]
  1. 创建三个文件夹,c是b的子文件夹,b是a的子文件夹
mkdir -p a/b/c



二、rmdir:删除一个空目录

rmdir [选项][目录]
  1. -p : 递归删除多层级空目录



④ 文件操作类命令



一、rm:删除文件、文件夹

rm [选项] [文件]

在这里插入图片描述


-r 递归删除目录

在这里插入图片描述

  1. -f 忽略提示信息
  2. -i 删除前逐一询问



二、touch:创建空文件或设置文件时间

touch  [选项]  [文件]
  1. -a:仅修改读取时间
  2. -m:仅修改修改时间
  3. -d:修改atime与mtime



三、cp:复制文件或目录

 cp  [选项]   源文件  路径/目标文件

在这里插入图片描述


-r: 递归持续复制(用于目录),复制目录中内容

  • 如果目标文件是目录,则会把源文件复制到该目录中;

在这里插入图片描述


-i: 若目标文件存在则询问是否覆盖

  • 如果目标文件不存在,则执行正常的复制操作。

在这里插入图片描述


-f,–force: 强行复制文件或目录,不论目标文件或目录是否已存在;root路径下,会进行询问

在这里插入图片描述


-a:通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合


在这里插入图片描述

  1. -p: 保留原始文件的属性
  2. -d: 若对象为“链接文件”,则保留该“链接文件”的属性



四、mv:剪切文件或将文件重命名

① 剪切文件

mv  [选项]  源文件 [ 目标路径|目标文件名]

在这里插入图片描述

② 重命名

在这里插入图片描述




五、diff:比较多个文本文件的差异

diff [参数] 文件1 文件2

在这里插入图片描述


① –brief:比较两个文件是否相同,相同无提示,不同有提示

在这里插入图片描述


② -c:显示文本相同与不同的地方


在这里插入图片描述




六、dd:指定大小和个数的数据块来复制文件或转换文件

dd   [参数] 
  1. if 输入的文件名称
  2. of 输出的文件名称
  3. bs 设置每个“块”的大小
  4. count 设置要复制“块”的个数



七、ln:创建链接文件

ln命令用来为文件创建链接,链接类型分为硬链接和符号链接两种,默认的链接类型是硬链接。

如果要创建符号链接必须使用”-s”选项。

符号链接文件不是一个独立的文件,它的许多属性依赖于源文件,所以给符号链接文件设置存取权限是没有意义的。


1. 软链接

  • 以路径的形式存在。类似于Windows操作系统中的快捷方式
  • 可以跨文件系统 ,硬链接不可以
  • 可以对一个不存在的文件名进行链接
  • 可以对目录进行链接


2. 硬链接

  • 以文件副本的形式存在。但不占用实际空间。
  • 不允许给目录创建硬链接
  • 只有在同一个文件系统中才能创建


创建硬链接

ln  [选项]  目标

在这里插入图片描述


-s 创建“符号链接(软链接)”

ln -s 文件 目标文件

在这里插入图片描述


-v 显示创建链接的过程

在这里插入图片描述

  1. -f 强制创建文件或目录的链接
  2. -i 覆盖前先询问



八、vi:创建新文件,并自动进入编辑模式

vi 文件名



⑤ 使用压缩解压命令



一、tar:用来建立,还原备份文件

tar [选项...] [FILE]
  1. -c: 创建新的文档
  2. -v: 显示详细的tar处理的文件信息
  3. -f: 要操作的文件名, 切记,这个参数是最后一个参数
  4. -x: 解压
  5. -t: 查看内容
  6. -z: 有gzip属性的
  7. -j: 有bz2属性的
  8. -r: 表示增加文件,把要增加的文件追加在压缩文件的末尾



-cvf

将源目录打包成目标文件名.tar

tar -cvf 目标文件名.tar 源目录

在这里插入图片描述



-rvf

将追加的目录压缩到目标文件名.tar中

tar -rvf 目标文件名.tar 追加的目录

③**-tvf** 查看tar文件内容

④**-xvf**



-czvf

打包并压缩成gz格式

⑥**-xzvf**




二、gzip:在文件后加上.gz后缀并将源文件删除

gzip [参数] [文件]
  1. -c:指定输出并保留源文件



三、gunzip:解压缩gzip格式文件

gunzip [参数] [文件]
  1. -l: 创建新的文档
  2. -d: 指定文件解压缩后所要存储的目录。
  3. -f: 要操作的文件名, 切记,这个参数是最后一个参数



四、zip:压缩文件

zip  [参数]  [打包后的文件名]  [打包的目录路径]
  1. -r; 递归压缩子目录下所有文件,不然只压出来一个空目录
  2. -y: 保持符号链接,而不用把符号链接指向的文件也压进来
  3. -f: 要操作的文件名, 切记,这个参数是最后一个参数



五、unzip:解压缩zip文件

unzip [参数] file[.zip]
  1. -l: 创建新的文档
  2. -d: 指定文件解压缩后所要存储的目录。
  3. -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 [查找路径] 寻找条件 [操作]
  1. -name: 匹配名称
  2. -perm: 匹配权限(mode 为完全匹配, -mode 为包含即可)
  3. -user 匹配所有者
  4. -group 匹配所有组
  5. -mtime -n +n :匹配修改内容的时间(-n 指 n 天以内, +n 指 n 天以前)
  6. -atime -n +n :匹配访问文件的时间(-n 指 n 天以内, +n 指 n 天以前)
  7. -ctime -n +n : 匹配修改文件权限的时间(-n 指 n 天以内, +n 指 n 天以前)
  8. -nouser; 匹配无所有者的文件
  9. -nogroup: 匹配无所有组的文件
  10. -newer f1 !f2: 匹配比文件 f1 新但比 f2 旧的文件
  11. –type b/d/c/p/l/f : 匹配文件类型(后面的字母参数依次表示块设备、目录、字符设备、管道、链接文件、普通文件)
  12. -size 匹配文件的大小
  13. -prune 忽略某个目录



⑦ 修改文件权限



一、chmmo:修改文件或者目录的权限

chmod [选项] 模式[,模式] 文件
  1. -R, –recursive: 以递归方式更改所有的文件及子目录;
  2. –version: 显示版本信息;



文件的隐藏属性



一、chattr:设置文件的隐藏权限

 chattr  [参数]  文件
  • 如果想要把某个隐藏功能添加到文件上,则需要在命令后面追加“+参数”
  • 如果想要把某个隐藏功能移出文件,则需要追加“-参数”
  1. i: 无法对文件进行修改;若对目录设置了该参数,则仅能修改其中的子文件内容而不能新建或删除文件
  2. a: 仅允许补充(追加)内容,无法覆盖/删除内容
  3. S: 文件内容在变更后立即同步到硬盘
  4. s: 彻底从硬盘中删除,不可恢复(用0填充原文件所在硬盘区域)
  5. A: 不再修改这个文件或目录的最后访问时间
  6. b: 不再修改文件或目录的存取时间
  7. D: 检查压缩文件中的错误
  8. d: 使用dump命令备份时忽略本文件/目录
  9. c: 默认将文件或目录进行压缩
  10. u: 当删除该文件后依然保留其在硬盘中的数据,方便日后恢复
  11. t: 让文件系统支持尾部合并
  12. X: 可以直接访问压缩文件中



二、lsattr:显示文件的隐藏权限

lsattr  [参数]  文件



⑧ 修改文件所有者及所属组



一、chown:用于文件或者文件夹宿主及属组的修改

chown [选项] 用户[:或.组] 文件或目录

① 修改所有者或组

//将test宿主改为linuxprobe
 [root@host root]# chown  linuxprobe  test

在这里插入图片描述

② 将目录本身及其以下的所有目录和文件的属主修改

chown -R 用户[:或.组] 目录 



版权声明:本文为m0_52445259原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。