Linux絮絮叨(六) 文件与目录管理

Linux 的目录结构为树状结构,最顶级目录为根目录 /

绝对路径与相对路径

  • 绝对路径 :以 / 为起点的路径,例如 /usr/share/doc
  • 相对路径 :以当前路径为起点的路径,例如 cd ../man

常用命令

1. ls (列出目录内容)

功能 :列出目录中的文件与目录。
语法

bash 复制代码
ls [-aAdfFhilnrRSt] 目录名称

常用选项

  • -a:列出所有文件(包括隐藏文件)。
  • -l:以长格式显示文件信息。
  • -d:只显示目录本身,而不是目录内容。

示例

bash 复制代码
ls -al ~   # 显示家目录的所有文件与详细信息

2. cd (切换目录)

功能 :切换工作目录。
语法

bash 复制代码
cd [相对路径或绝对路径]

常用操作

  • cd /root/runoob/:使用绝对路径切换到目录。
  • cd ./runoob/:使用相对路径切换到目录。
  • cd ~:切换到用户的家目录。
  • cd ..:切换到上一级目录。

3. pwd (显示当前目录)

功能 :显示当前工作目录路径。
语法

bash 复制代码
pwd [-P]

选项

  • -P:显示实际路径(解析符号链接)。

示例

bash 复制代码
pwd       # 显示当前目录
pwd -P    # 显示实际目录(解析链接)

4. mkdir (创建目录)

功能 :创建新目录。
语法

bash 复制代码
mkdir [-mp] 目录名称

选项

  • -m:设置目录权限。
  • -p:递归创建多层目录。

示例

bash 复制代码
mkdir test                     # 创建单个目录
mkdir -p test1/test2/test3     # 创建多层目录
mkdir -m 711 test2             # 创建权限为 rwx--x--x 的目录

5. rmdir (删除空目录)

功能 :删除空目录。
语法

bash 复制代码
rmdir [-p] 目录名称

选项

  • -p:一次性删除多级空目录。

示例

bash 复制代码
rmdir runoob/                   # 删除空目录
rmdir -p test1/test2/test3/test4  # 递归删除多级空目录

6. cp (复制文件或目录)

功能 :复制文件或目录。
语法

bash 复制代码
cp [-adfilprsu] 来源 目标

常用选项

  • -a:递归复制,并保留属性。
  • -i:覆盖时提示确认。
  • -r:递归复制目录。
  • -p:保留文件权限和时间戳。

示例

bash 复制代码
cp ~/.bashrc /tmp/bashrc   # 复制文件
cp -i ~/.bashrc /tmp/bashrc  # 覆盖前提示

7. rm (删除文件或目录)

功能 :删除文件或目录。
语法

bash 复制代码
rm [-fir] 文件或目录

选项

  • -f:强制删除。
  • -i:删除前提示确认。
  • -r:递归删除目录及其内容。

示例

bash 复制代码
rm -i bashrc   # 删除文件,提示确认
rm -rf /tmp/test_dir  # 强制递归删除目录

8. mv (移动或重命名)

功能 :移动文件或目录,或重命名。
语法

bash 复制代码
mv [-fiu] 来源 目标

选项

  • -f:强制覆盖目标文件。
  • -i:覆盖前提示确认。
  • -u:仅当来源比目标新时更新。

示例

bash 复制代码
mv bashrc mvtest/          # 移动文件到目录
mv mvtest mvtest2          # 重命名目录

补充说明

  • 使用 man [命令] 可以查看命令的详细使用说明,例如 man cp
相关推荐
herderl7 分钟前
**僵尸进程(Zombie Process)** 和**孤儿进程(Orphan Process)**
linux·运维·服务器·网络·网络协议
tomelrg17 分钟前
多台服务器批量发布arcgisserver服务并缓存切片
服务器·python·arcgis
lepton_yang18 分钟前
Zephyr下控制ESP32S3的GPIO口
linux·嵌入式硬件·esp32·zephyr
泽020231 分钟前
Linux 编译器 gcc 与 g++
linux·运维·服务器
G_H_S_3_1 小时前
【网络运维】Playbook项目实战:基于 Ansible Playbook 一键部署 LNMP 架构服务器
linux·运维·服务器·网络·ansible
yuxb732 小时前
Ansible 学习笔记:变量事实管理、任务控制与文件部署
linux·运维·笔记
爱敲代码的边芙2 小时前
实习两个月总结
服务器
岚天start2 小时前
Linux sar命令详细使用指南
linux·运维·服务器·负载·sar·磁盘io·sysstat
遇见火星2 小时前
Jenkins全链路教程——Jenkins调用Maven构建项目
运维·jenkins·maven