把 Linux 软硬链接全套命令都还给我,我再也不啃文件系统了(上)

把 Linux 软硬链接全套命令都还给我,我再也不啃文件系统了(上)
Linux 基础命令行文件系统与文件管理实操指南前言刚完成 CentOS 7.9 Linux 文件管理章节学习本篇博客整理日常运维高频文件操作命令从 Linux 文件系统标准、路径切换、文件目录增删改查、软硬链接再到配套实操案例完整梳理适合新手入门收藏。本文暂不讲解 Shell 通配符扩展匹配相关内容后续单独出一篇通配符实操教程。一、Linux FHS 文件系统标准Windows 每个磁盘分区独立根目录而 Linux 统一采用单一根目录 /的树形文件结构。如果所有开发者随意自定义目录存放文件不同服务器操作逻辑会完全混乱因此业界统一遵循FHS文件系统层次标准规范根目录及 /usr、/var 等核心目录的用途。核心目录作用一览目录核心作用/usr系统预装软件、公共依赖库存放普通用户命令、系统管理工具、本地自定义软件/etc全系统所有配置文件服务、用户、网络配置均在此目录/var可变持久数据系统日志、缓存、数据库、网站资源重启数据不丢失/run本次开机运行进程临时文件存放 PID、锁文件重启自动重建/home普通用户家目录每个用户独立文件夹如/home/laoma/rootroot 超级管理员专属家目录普通用户无访问权限/tmp全局临时文件目录闲置10天未访问文件自动清理另有/var/tmp30天自动清理/boot系统开机引导、内核镜像文件系统启动依赖该目录/dev硬件设备映射文件硬盘、网卡、光驱等硬件都以文件形式存在此处二、文件路径切换与目录查看工具2.1 绝对路径 相对路径绝对路径以/开头完整定位文件真实位置编写配置、脚本时优先使用不会出错相对路径不以/开头基于当前所在目录跳转日常手动操作更简洁特殊路径标识.当前目录..上一级父目录~当前登录用户家目录2.2 路径切换命令cd、pwdpwd打印当前所在目录cd切换工作目录常用示例# 绝对路径跳转cd/usr/bin# 回到上一次停留的目录cd-# 直接返回用户家目录cd~cd# 跳转到上级目录cd..# 多级相对路径跳转cd../../share2.3 ls 查看目录常用参数ls 是查看文件目录最常用命令不同参数满足不同查看需求# 单列展示所有文件ls-1# 递归查看所有子目录内容ls-R/etc/yum# 长列表展示权限、属主、大小、修改时间等完整信息ls-l/etc/hosts# 按修改时间倒序排列ls-tl# 仅查看目录本身不展开内部文件ls-ld/etc/yum# 文件名反向排序ls-rl2.4 tree 树形可视化目录ls 只能平铺展示tree 可以树形层级打印目录结构CentOS 7 默认未安装# 配置阿里yum镜像源curl-s-o/etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repocurl-s-o/etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo# 安装tree工具yuminstall-ytree# 查看yum目录树形结构tree /etc/yum2.5 stat touch文件时间戳管理stat查看文件完整元数据inode、权限、三组时间、硬链接数、存储块大小stat/etc/fstabtouch 两大核心能力文件不存在创建空白新文件文件已存在刷新文件访问、修改时间戳# 刷新文件时间touchliu.txt# 文件不存在时不创建touch-cliu-f2.txt# 仅修改访问时间touch-atest.txt# 仅修改内容修改时间touch-mtest.txt三、文件与目录基础操作命令汇总3.1 操作命令速查表操作场景单文件/单目录多文件/多目录创建目录mkdir dirmkdir -p a/b/c 递归创建多层目录复制文件cp file1 file2cp f1 f2 f3 目标文件夹复制目录cp -r dir1 dir2cp -r dir1 dir2 dir3 目标文件夹移动/重命名mv file1 file2mv f1 f2 f3 目标文件夹删除空目录rmdir dir仅支持无文件空目录删除文件/目录rm file / rm -r dirrm -rf 批量强制递归删除3.2 mkdir 创建目录# 创建单个目录mkdirlab# 一次性创建多个同级目录mkdirlab1 lab2# 递归创建多层嵌套目录父目录不存在也不会报错mkdir-pdir1/dir2/dir33.3 cp 复制文件/目录# 复制文件到当前目录cp/etc/hosts.# 复制并重命名cp/etc/hosts ./hosts-1# 覆盖前弹出确认提示cp-i/etc/hosts ./hosts-1# 复制目录必须加 -r 参数cp-r/etc/yum ./yum-bak# 多文件复制末尾必须是文件夹cp/etc/passwd /etc/hosts.allow ./lab/3.4 mv 移动与重命名mv 无递归参数文件、目录通用同目录操作等于重命名跨目录等于移动# 移动文件到指定目录mvhosts-1../lab1# 多文件批量移动mvpasswdhosts /home/laoma/lab1/# 文件重命名mvhosts.allow hosts.allow-new# 移动目录mvetc../lab13.5 rmdir rm 删除操作rmdir仅能删除空目录目录内存在文件会直接报错rm删除文件/目录生产环境慎用-rf组合# 删除普通文件rmhosts# 强制删除写保护文件无确认弹窗rm-fcacerts# 递归删除整个目录rm-ryum# 强制递归删除无任何交互提示rm-fretc四、软链接与硬链接详解链接是 Linux 特色功能分为软链接符号链接、硬链接作用和特性完全不同。4.1 软链接 ln -s类比 Windows 快捷方式本身是独立文件仅记录源文件路径支持跨分区、跨目录创建删除源文件后软链接失效无法访问# 创建软链接 mytmp 指向 /var/tmpln-s/var/tmp/ mytmp# 查看链接指向关系ls-lmytmp4.2 硬链接 ln多个文件名绑定同一个 inode 数据块不存在独立链接文件仅能在同一分区、同一文件系统创建目录无法创建硬链接任意硬链接修改内容、时间戳所有同步更新删除其中一个链接文件数据不会丢失全部删除数据才销毁# 创建硬链接lnhosts-1 hosts-2# 查看inode两个文件编号完全一致ls-ihosts-1 hosts-2五、综合实操案例媒体文件分类管理需求说明在家目录批量创建媒体文件分类存放、拆分归档、创建软链接并清理环境覆盖上文所有基础命令。创建媒体存放目录 Music Picture VideomkdirMusic Picture Video批量创建歌曲、图片、视频文件touchsong1.mp3 song2.mp3 song3.mp3 song4.mp3 song5.mp3 song6.mp3touchsnap1.jpg snap2.jpg snap3.jpg snap4.jpg snap5.jpg snap6.jpgtouchfilm1.avi film2.avi film3.avi film4.avi film5.avi film6.avi将对应文件移动至分类目录mvsong*.mp3 Music/mvsnap*.jpg Picture/mvfilm*.avi Video/创建归档目录 friends family workmkdirfriends family work按序号复制文件归档# 1、2号文件复制到friendscpMusic/song1.mp3 Music/song2.mp3 Picture/snap1.jpg Picture/snap2.jpg Video/film1.avi Video/film2.avi friends/# 3、4号文件复制到familycpMusic/song3.mp3 Music/song4.mp3 Picture/snap3.jpg Picture/snap4.jpg Video/film3.avi Video/film4.avi family/# 5、6号文件复制到workcpMusic/song5.mp3 Music/song6.mp3 Picture/snap5.jpg Picture/snap6.jpg Video/film5.avi Video/film6.avi work/将 family、friends 复制到系统临时目录 /tmpcp-rfamily friends /tmp删除家目录下 family、friendsrm-rfamily friends清空 work 内所有文件再删除空目录cdworkrm*cd..rmdirwork创建软链接 mytmp 指向系统临时目录 /var/tmpln-s/var/tmp/ mytmpls-lmytmp清理所有实验生成文件rm-rMusic Picture Video mytmprm-r/tmp/family /tmp/friends六、总结FHS 统一 Linux 目录规范掌握核心目录用途是看懂服务器的基础cd、pwd、ls、tree、stat、touch 是目录查看与文件属性操作必备工具mkdir/cp/mv/rm 覆盖文件目录全部增删改查场景rm -rf高危操作线上谨慎使用软链接适合跨分区快捷引用硬链接适合多入口备份同一份文件配套媒体分类实操覆盖全部基础命令可自行复现巩固忘记命令参数可通过 man、help、–help 快速查阅帮助。后续预告下一篇博客单独讲解 Shell 文件通配符匹配*、?、[]、{}简化批量文件操作大幅提升命令行效率。