Linux系统之mkdir与rmdir命令的基本使用

简介: Linux系统之mkdir与rmdir命令的基本使用

在这里插入图片描述

一、mkdir命令介绍

1.1 mkdir命令简介

mkdir是一个用于创建目录的命令,其全称为"make directory",意为创建一个新的目录。该命令可以在任何Unix或类Unix操作系统下使用,包括Linux、macOS、FreeBSD等。

1.2 mkdir命令的由来

mkdir命令的由来可以追溯到1971年的Unix V1版本。在Unix的早期版本中,目录是在文件系统层次结构的特定位置手动创建的。随着时间的推移,mkdir命令和其他文件系统工具的发展,使得Unix文件系统的管理变得更加容易和高效。

二、mkdir命令的使用帮助

2.1 mkdir命令的help帮助信息

在shell终端,查看mkdir的help帮助信息。

基本格式:

mkdir [选项] 目录名称
[root@server-01 ~]# mkdir --help
Usage: mkdir [OPTION]... DIRECTORY...
Create the DIRECTORY(ies), if they do not already exist.

Mandatory arguments to long options are mandatory for short options too.
  -m, --mode=MODE   set file mode (as in chmod), not a=rwx - umask
  -p, --parents     no error if existing, make parent directories as needed
  -v, --verbose     print a message for each created directory
  -Z                   set SELinux security context of each created directory
                         to the default type
      --context[=CTX]  like -Z, or if CTX is specified then set the SELinux
                         or SMACK security context to CTX
      --help     display this help and exit
      --version  output version information and exit

GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
For complete documentation, run: info coreutils 'mkdir invocation'

2.2 mkdir命令的选项解释

常用选项:

  • -p,创建多层目录,即父目录不存在时也可以创建。
  • -m,设置权限。
  • -v,显示创建过程。
  • --version 显示版本信息

三、mkdir命令的基本使用

3.1 查看mkdir的版本

查看mkdir的版本

[root@server-01 ~]# mkdir --version
mkdir (GNU coreutils) 8.22
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

Written by David MacKenzie.

3.2 创建一个新目录

要在当前目录下创建一个名为test的目录,可以使用以下命令:

mkdir test
  • 如果想要在当前目录下创建一个名为path/to/my/folder的多层目录,可以使用以下命令:
mkdir -p  /test/a/b/c

3.3 创建目录时设置目录权限

  • 如果想要在当前目录下创建一个名为test的目录,并给该目录设置权限为755(读、写、执行权限),可以使用以下命令:
mkdir -m 755 test
  • 查看新建目录权限
[root@server-01 ~]# ls -ld test/
drwxr-xr-x 2 root root 4096 Sep  1 22:42 test/

3.4 显示创建目录过程

  • 如果想要在创建目录时显示创建过程,可以使用以下命令:
[root@server-01 ~]# mkdir -pv test/a/b/c/d
mkdir: created directory ‘test/a’
mkdir: created directory ‘test/a/b’
mkdir: created directory ‘test/a/b/c’
mkdir: created directory ‘test/a/b/c/d’

.

3.5 使用时注意事项

在使用 mkdir 命令时,有以下一些注意事项:

  • 目录名不能包含空格或其他特殊字符,如*、?、$等。

  • 如果要创建多级目录,需要使用 -p 参数。

  • 如果要创建已存在的目录,不会产生错误,但也不会覆盖原有目录。

  • 如果没有权限在当前目录下创建目录,则会报出 Permission denied 错误。

  • 如果要创建与已存在的文件同名的目录,则会报出 File exists 错误。

  • 在使用 mkdir 命令时,需要注意当前所在的工作目录,否则会在不正确的位置创建目录。

  • 如果需要创建隐藏目录,需要在目录名前添加一个“.”号。

  • 在Linux/Unix系统中,文件和目录的名称是区分大小写的。

四、rmdir命令介绍

4.1 rmdir命令简介

rmdir命令是一个在命令行界面下操作系统文件系统的命令,用于删除指定目录。该命令只能删除空目录,如果该目录中存在文件或者子目录,将无法删除。

4.2 rmdir命令使用帮助

rmdir [选项] 目录名

常用的选项包括:

  • -p:递归删除目录及其父目录;
  • -v:显示每个删除的目录名称。

五、rmdir命令基本使用

5.1 删除单个空目录

例如在空目录test/a/b/c/d中,删除单个空目录./d

rmdir dirname
[root@server-01 ~]# ls -ld test/a/b/c/d/
drwxr-xr-x 2 root root 4096 Sep  1 22:44 test/a/b/c/d/
[root@server-01 ~]# rmdir test/a/b/c/d/
[root@server-01 ~]# tree ./test/
./test/
└── a
    └── b
        └── c

3 directories, 0 files

5.2 递归删除目录及其父目录

例如在空目录test/a/b/c/中,递归删除目录及其父目录。

rmdir -p dirname
[root@server-01 ~]# ls -ld test/a/b/c/
drwxr-xr-x 2 root root 4096 Sep  1 22:58 test/a/b/c/
[root@server-01 ~]# rmdir -p test/a/b/c/
[root@server-01 ~]# ls test
ls: cannot access test: No such file or directory

5.2 显示每个删除的目录名称

使用-v选项,显示每个删除的目录名称。

rmdir -v dirname
[root@server-01 ~]# rmdir -pv test/a/b/c/d/
rmdir: removing directory, ‘test/a/b/c/d/’
rmdir: removing directory, ‘test/a/b/c’
rmdir: removing directory, ‘test/a/b’
rmdir: removing directory, ‘test/a’
rmdir: removing directory, ‘test’

5.3 使用注意事项

  • 使用rmdir命令删除目录时,目录必须为空,否则会删除失败。

  • 如果要删除非空目录,可以使用rm命令的-r选项或者是使用rm -rf命令。

  • 使用rmdir命令删除目录时,需要有对该目录及其父目录的写权限。

  • 使用rmdir命令删除不存在的目录会产生错误信息。

  • 在使用rmdir命令删除目录时,建议先进行备份操作,以免误删重要数据。

  • 删除系统文件或重要目录时,一定要谨慎操作,以免系统出现问题。

相关文章
|
27天前
|
存储 缓存 监控
Linux缓存管理:如何安全地清理系统缓存
在Linux系统中,内存管理至关重要。本文详细介绍了如何安全地清理系统缓存,特别是通过使用`/proc/sys/vm/drop_caches`接口。内容包括清理缓存的原因、步骤、注意事项和最佳实践,帮助你在必要时优化系统性能。
173 78
|
1月前
|
Linux Shell 网络安全
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
本指南介绍如何利用 HTA 文件和 Metasploit 框架进行渗透测试。通过创建反向 shell、生成 HTA 文件、设置 HTTP 服务器和发送文件,最终实现对目标系统的控制。适用于教育目的,需合法授权。
64 9
Kali Linux系统Metasploit框架利用 HTA 文件进行渗透测试实验
|
1月前
|
Linux Shell
Linux 10 个“who”命令示例
Linux 10 个“who”命令示例
65 14
Linux 10 个“who”命令示例
|
27天前
|
Ubuntu Linux
Linux 各发行版安装 ping 命令指南
如何在不同 Linux 发行版(Ubuntu/Debian、CentOS/RHEL/Fedora、Arch Linux、openSUSE、Alpine Linux)上安装 `ping` 命令,详细列出各发行版的安装步骤和验证方法,帮助系统管理员和网络工程师快速排查网络问题。
124 20
|
18天前
|
Linux
linux查看目录下的文件夹命令,find查找某个目录,但是不包括这个目录本身?
通过本文的介绍,您应该对如何在 Linux 系统中查看目录下的文件夹以及使用 `find` 命令查找特定目录内容并排除该目录本身有了清晰的理解。掌握这些命令和技巧,可以大大提高日常文件管理和查找操作的效率。 在实际应用中,灵活使用这些命令和参数,可以帮助您快速定位和管理文件和目录,满足各种复杂的文件系统操作需求。
47 8
|
27天前
|
存储 监控 Linux
嵌入式Linux系统编程 — 5.3 times、clock函数获取进程时间
在嵌入式Linux系统编程中,`times`和 `clock`函数是获取进程时间的两个重要工具。`times`函数提供了更详细的进程和子进程时间信息,而 `clock`函数则提供了更简单的处理器时间获取方法。根据具体需求选择合适的函数,可以更有效地进行性能分析和资源管理。通过本文的介绍,希望能帮助您更好地理解和使用这两个函数,提高嵌入式系统编程的效率和效果。
94 13
|
27天前
|
网络协议 Linux 应用服务中间件
kali的常用命令汇总Linux
kali的常用命令汇总linux
59 7
|
2月前
|
监控 网络协议 Linux
Linux netstat 命令详解
Linux netstat 命令详解
|
27天前
|
Ubuntu Linux C++
Win10系统上直接使用linux子系统教程(仅需五步!超简单,快速上手)
本文介绍了如何在Windows 10上安装并使用Linux子系统。首先,通过应用商店安装Windows Terminal和Linux系统(如Ubuntu)。接着,在控制面板中启用“适用于Linux的Windows子系统”并重启电脑。最后,在Windows Terminal中选择安装的Linux系统即可开始使用。文中还提供了注意事项和进一步配置的链接。
42 0
|
1月前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。