当前位置: 首页 > news >正文

Linux文件管理2

Linux 文件管理是系统操作的核心内容之一,涉及文件和目录的创建、删除、移动、查看、权限管理等操作。以下是 Linux 文件管理的核心知识点和常用操作总结:

一、文件系统结构

Linux 文件系统采用 树形结构,以 /(根目录) 为起点,所有文件和设备都挂载在该目录下。常见目录及其作用:

目录说明
/bin存放基本命令(如 lscdmkdir 等,供所有用户使用)
/sbin存放系统管理命令(如 shutdownfdisk,通常仅 root 用户使用)
/etc存放系统配置文件(如网络配置、用户信息等)
/home用户主目录(如 /home/user1 对应用户 user1 的家目录)
/rootroot 用户的主目录
/usr存放用户程序和文档(类似 Windows 的 Program Files
/var存放可变数据(如日志文件、邮件、缓存等)
/tmp临时文件目录(通常所有用户可读写)
/dev设备文件目录(如硬盘、光驱、USB 等设备映射文件)
/mnt临时挂载目录(用于挂载硬盘、U 盘等外部存储设备)
/boot存放系统启动文件(如内核、引导加载程序)

二、常用文件管理命令

1. 查看文件 / 目录

ls:列出目录内容

ls [-ahlR] [路径]  # -a显示隐藏文件,-h人性化显示大小,-l详细信息,-R递归查看子目录

pwd:显示当前工作目录

pwd  # 示例输出:/home/user1/documents

cd:切换目录

cd /目标路径         # 切换到绝对路径
cd ../              # 切换到上级目录
cd ~                # 切换到当前用户主目录

cat:查看文本文件内容(适合小文件)

cat 文件名.txt

more/less:分页查看文本文件(适合大文件)

more 文件名.txt     # 按空格翻页,按 q 退出
less 文件名.txt     # 支持上下箭头滚动,按 q 退出

head/tail:查看文件头部 / 尾部内容

head -n 10 文件名    # 查看前 10 行(默认前 10 行)
tail -f 文件名       # 实时监控文件尾部更新(常用于日志文件)
2. 创建文件 / 目录

mkdir:创建目录

mkdir 目录名          # 创建单个目录
mkdir -p 父目录/子目录 # 创建多级目录(若父目录不存在则自动创建)

touch:创建空文件或更新文件时间戳

touch 文件名.txt      # 创建空文件
touch file1 file2     # 同时创建多个文件
3. 复制、移动、删除文件 / 目录

cp:复制文件或目录

cp 源文件 目标路径    # 复制文件
cp -r 源目录 目标路径 # 复制目录(需加 -r 递归)

mv:移动文件 / 目录(或重命名)

mv 源文件 目标路径    # 移动文件
mv 旧文件名 新文件名  # 重命名文件

rm:删除文件或目录

rm 文件名            # 删除文件(需确认)
rm -r 目录名          # 删除目录(递归删除,危险!)
rm -f 文件名          # 强制删除(不提示确认)
4. 文件权限管理

Linux 文件有 读(r)、写(w)、执行(x) 三种权限,分别对应 所有者(User)、所属组(Group)、其他用户(Others) 三类用户。

查看权限

ls -l 文件名          # 输出格式:-rwxr-xr-- 1 user group 1234 May 10 10:00 文件名
  • 首字符:-(文件)、d(目录)、l(链接文件)
  • 权限部分:前 3 位(所有者)、中间 3 位(所属组)、后 3 位(其他用户)
  • 示例:rwxr-xr-- 表示所有者有读写执行权限,所属组有读和执行权限,其他用户仅有读权限。

修改权限

字符法:使用 u(所有者)、g(所属组)、o(其他用户)、a(所有用户)指定对象,用 +(添加)、-(移除)、=(设置)操作权限。

chmod u+x 文件名      # 给所有者添加执行权限
chmod go-rw 文件名    # 移除所属组和其他用户的读写权限

数字法:用数字表示权限(r=4w=2x=1),例如 755 表示 rwxr-xr-x

chmod 755 目录名      # 给目录设置所有者读写执行,其他用户读和执行权限

修改所有者和所属组

chown 新所有者 文件名     # 修改文件所有者
chgrp 新组名 文件名       # 修改文件所属组
chown -R 所有者:组 目录名  # 递归修改目录及其子文件的所有者和所属组

三、文件搜索

find:在指定路径下搜索文件(功能强大,支持按名称、类型、权限、时间等过滤)

find /路径 -name "*.txt"       # 搜索扩展名为 .txt 的文件
find /home -user user1         # 搜索 user1 所有的文件
find /var/log -size +10M       # 搜索大于 10MB 的文件
find . -type d -name "logs"    # 搜索当前目录下名为 logs 的目录

locate:基于数据库快速搜索文件(需定期更新数据库,使用前执行 updatedb

locate /etc/sysconfig          # 搜索 etc 目录下包含 sysconfig 的文件

grep:在文件中搜索指定字符串(常用于日志分析)

grep "ERROR" /var/log/messages  # 搜索日志中包含 ERROR 的行
grep -r "关键词" 目录           # 递归搜索目录下所有文件中的关键词

四、文件压缩与解压缩

常见压缩格式

.zip:通用格式,跨平台兼容

zip 压缩包名.zip 文件1 文件2    # 压缩文件
unzip 压缩包名.zip              # 解压缩

.tar.gz/.tgz:Linux 常用格式(tar 打包 + gzip 压缩)

tar -czvf 归档名.tar.gz 目录/    # 压缩目录(-c 创建,-z gzip 压缩,-v 显示过程,-f 指定文件名)
tar -xzvf 归档名.tar.gz -C 路径  # 解压缩到指定路径(-x 提取,-C 指定目录)

.tar.bz2:使用 bzip2 压缩,压缩比更高

tar -cjvf 归档名.tar.bz2 文件/   # 压缩
tar -xjvf 归档名.tar.bz2         # 解压缩

五、链接文件

Linux 支持两种链接:硬链接(Hard Link) 和 软链接(Symbolic Link,又称符号链接)

硬链接:指向同一文件的不同文件名,共享 inode 节点,删除原文件不影响硬链接。

ln 原文件 硬链接名

软链接:类似 Windows 的快捷方式,指向原文件的路径,删除原文件后软链接失效。

ln -s 原文件 软链接名

六、磁盘与文件系统操作

查看磁盘空间

df -h  # 以人性化格式显示磁盘使用情况

查看目录大小

du -sh 目录名  # 查看目录总大小(-s 显示总和,-h 人性化单位)

挂载 / 卸载设备

mount /dev/sdb1 /mnt/usb  # 挂载 USB 设备到 /mnt/usb 目录
umount /mnt/usb           # 卸载设备

七、重要快捷键

Tab 键:自动补全文件名或命令

Ctrl + C:终止当前命令

Ctrl + L:清屏(等价于 clear 命令)

Ctrl + Z:将当前进程放入后台暂停

Ctrl + D:退出当前终端或输入结束

http://www.xdnf.cn/news/150985.html

相关文章:

  • 人工智能在创意设计中的应用:激发无限可能
  • Codeforces Round 1019 (Div. 2) ABC
  • Vue2升级到Vue3
  • 模方ModelFun是什么?如何安装?
  • C语言程序环境和预处理详解
  • 8.ArkUI Stack的介绍和使用
  • C语言:位段
  • SAP Predictive Analytics The Comprehensive Guide
  • LangChain LCEL表达式语言简介
  • SAP接口超时:对 FOR ALL ENTRIES IN 的优化
  • MySQL安装实战分享
  • 数据加密技术:从对称加密到量子密码的原理与实战
  • 【重磅】敲敲云桌面版正式发布!
  • 电力系统最小惯性常数解析
  • 新闻速递丨Altair 与 Databricks 达成合作,加速数据驱动型创新
  • 【python】如何将python程序封装为cpython的库
  • PowerShell脚本实现|从文件夹动画序列中均匀选取关键帧(保留首尾帧)
  • 【Java开发规范及漏洞扫描】
  • 对比2款国产远控软件,贝锐向日葵更优
  • 嵌入式:Linux系统应用程序(APP)启动参数及其规则详解
  • 感知古今:探秘古代传感器的奇妙世界
  • STUN协议 与 TURN协议
  • 如何在SOLIDWORKS中高效管理文件属性?
  • 基于ssm的同城上门维修平台管理系统(源码+数据库)
  • 基于STM32、HAL库的ADS1220IPWR模数转换器ADC驱动程序设计
  • 什么是优质的静态IP?以及如何选择优质的静态IP?
  • redis 数据类型新手练习系列——Hash类型
  • script中async与defer区别
  • Java基本概念
  • C语言标准库函数setlocale用法详解