Linux 目录操作命令

新增目录

mkdir

mkdir 命令用于创建新目录(文件夹)。

mkdir directory...

常用选项

选项 全称 含义
-p --parents 创建多级目录,如果父目录不存在则自动创建
-v --verbose 显示详细操作信息
-m --mode 设置目录权限模式

示例

创建一个名为 dir1 的单一目录。

mkdir dir1

创建三个名为 dir1、dir2 和 dir3 的目录。

mkdir dir1 dir2 dir3

创建多级目录结构,可以应对父目录不存在的情况。

mkdir -p project/src/include

创建目录并显示详细信息。

mkdir -v logs
mkdir: created directory 'logs'

创建具有特定权限的目录(755权限:rwxr-xr-x)。

mkdir -m 755 dir

删除目录

rmdir

rmdir 命令用于删除空目录。

rmdir directory...

常用选项

选项 全称 含义
-p --parents 删除目录及其空的父目录
-v --verbose 显示详细操作信息

示例

删除一个空目录 dir1。

rmdir dir1

删除多个空目录。

rmdir dir1 dir2 dir3

删除多级空目录结构。

rmdir -p project/src/include

显示删除过程的详细信息。

rmdir -v empty_dir
rmdir: removing directory, 'empty_dir'

切换目录

cd

cd 命令用于切换当前工作目录。

cd [directory]

特殊符号

符号 含义
. 当前目录
.. 上级目录
~ 当前用户的主目录
- 切换到上一个工作目录
~username 指定用户的主目录

pushd, popd, dirs:目录栈操作

目录栈(directory stack)是一个LIFO(后进先出)的栈结构,用于保存多个工作目录路径,允许用户快速在多个目录之间切换,而不需要记住完整的目录路径。

pushd:切换目录并压入栈中

pushd 命令用于切换到指定目录,并将原目录压入目录栈。

pushd [directory]

工作原理

  1. 将当前目录压入栈顶
  2. 切换到指定目录
  3. 显示当前的目录栈内容

常用选项

选项 含义
+n 使第n个目录成为栈顶并切换到该目录(从栈顶开始计数为0)
-n 使第n个目录成为栈顶并切换到该目录(从栈底开始计数为0)

popd:从栈中弹出目录并切换

popd 命令用于从目录栈中弹出栈顶目录,并切换到新的栈顶目录。

popd [option]

工作原理

  1. 从栈顶弹出目录
  2. 切换到新的栈顶目录
  3. 显示当前的目录栈内容

常用选项

选项 含义
+n 移除栈中第n个目录(从栈顶开始计数为0)
-n 移除栈中第n个目录(从栈底开始计数为0)

dirs:显示目录栈内容

dirs 命令用于显示当前目录栈的内容。

dirs [option]

常用选项

选项 含义
-s 使用~缩写主目录(默认行为)
-l 展开~为完整路径
-v 每行显示一个目录,并显示索引号
-c 清空目录栈
-p 每行显示一个目录

查看目录

pwd

pwd 命令用于显示当前工作目录的完整路径。

pwd [option]

常用选项

选项 全称 含义
-L --logical 显示逻辑路径(包含符号链接)
-P --physical 显示物理路径(解析所有符号链接)

ls

ls 命令用于列出目录中的文件和子目录。

ls [option]... [file]...

常用选项

选项 全称 含义
-a --all 显示所有文件,包括隐藏文件(以.开头)
-l --long 使用长格式显示详细信息
-u 使用文件的最后访问时间,而非最后修改时间
-U 使用文件的创建时间,而非最后修改时间
-h --human-readable -l一起使用,以人类可读格式显示文件大小
-d --directory 列出目录本身,而不是其内容
-t --sort=time 按修改时间排序,最新的最先显示
-S --sort=size 按文件大小排序
-r --reverse 逆序排序
-R --recursive 递归列出子目录内容
-F --classify 在条目后添加指示符(/表示目录,*表示可执行文件)
--color 使用颜色区分文件类型
-i --inode 显示文件的inode编号

文件类型指示符

符号 含义
/ 目录
* 可执行文件
@ 符号链接
= 套接字文件
<code>|</code> 管道文件

tree

tree 命令以树状格式显示目录和文件的结构。

tree [directory] [options]

常用选项

选项 含义
-a 显示所有文件,包括隐藏文件
-h 以人类可读格式显示文件大小
-d 仅显示目录
-t 按修改时间排序
-r 逆序排序
-f 显示完整路径
-s 显示文件大小
-L level 限制显示的目录深度
-o filename 将输出保存到文件
-I pattern 排除匹配模式的文件或目录
-P pattern 只显示匹配模式的文件或目录

示例

显示当前目录的树状结构。

tree
.
├── dir1
│   ├── file1.txt
│   └── file2.txt
├── dir2
│   └── subdir
└── file3.txt

显示完整路径。

tree -f
.
├── ./dir1
│   ├── ./dir1/file1.txt
│   └── ./dir1/file2.txt
└── ./file3.txt

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容