首页 > 系统相关 >软件测试|Linux 基础教程:创建和删除目录

软件测试|Linux 基础教程:创建和删除目录

时间:2023-08-20 16:04:04浏览次数:50  
标签:删除 ubuntu 目录 基础教程 Linux test rm muller 软件测试

软件测试|Linux 基础教程:创建和删除目录_递归

简介

在 Linux 系统中,创建和删除目录是非常常见的操作。目录是用于组织文件和其他目录的一种结构,它们是组织文件系统的重要组成部分。本文将介绍如何在 Linux 系统中创建和删除目录。

创建目录

在 Linux 中,可以使用 mkdir 命令来创建一个新的目录。mkdir 是 Make Directory(创建目录)的缩写。

基本语法 创建目录的基本语法如下:

mkdir [-mp] directory_name

其中,directory_name 是要创建的目录的名称。

  • -m 选项用于手动配置所创建目录的权限,而不再使用默认权限。
  • -p 选项递归创建所有目录,以创建/home/test/demo为例,在默认情况下,你需要一层一层的创建各个目录,而使用 -p 选项,则系统会自动帮你创建 /home/home/test 以及 /home/test/demo

使用示例

  1. 建立目录
mkdir salah
ls
demo  Desktop  Documents  Downloads  Music  Pictures  Public  salah  snap  Templates  Videos

我们建立一个名为 salah 的目录,通过 ls 命令可以查看到这个目录已经建立。注意,我们在建立目录的时候使用的是相对路径,所以这个目录被建立到当前目录下。

  1. 使用 -p 选项递归建立目录
muller@ubuntu:~$ mkdir novels/uk/harrypotter
mkdir: cannot create directory ‘novels/uk/harrypotter’: No such file or directory
muller@ubuntu:~$ mkdir -p novels/uk/harrypotter
muller@ubuntu:~$ ls
demo  Desktop  Documents  Downloads  Music  novels  Pictures  Public  salah  snap  Templates  Videos
muller@ubuntu:~$ ls novels/
uk
muller@ubuntu:~$ ls novels/uk
harrypotter

当我们没有加-p参数时,创建递归目录会报错,加上之后,即可成功创建目录。

  1. 使用 -m 选项自定义目录权限
muller@ubuntu:~$ mkdir -m 711 demo2
muller@ubuntu:~$ mkdir -m 777 demo3
muller@ubuntu:~$ ls -l
total 56
drwxrwxr-x 2 muller muller 4096 Jul 21 15:44 demo
drwx--x--x 2 muller muller 4096 Jul 21 17:27 demo2
drwxrwxrwx 2 muller muller 4096 Jul 21 17:27 demo3

仔细看上面的权限部分,也就是 ls 命令输出的第一列数据,demo目录由于不是使用 -m 选项设定访问权限,因此这个目录采用的是默认权限(这里的默认权限值是 755,后续再详细介绍默认权限)。

而在创建 demo2 时,使用了 -m 选项,通过设定 711 权限值来给予新的目录 drwx--x--x 的权限,有关权限值的具体含义后续进行介绍。

删除目录

在 Linux 中,可以使用rmdirrm 命令来删除目录。但需要注意,删除目录时必须确保目录为空,否则 rmdir 命令会报错。如果目录不为空,您需要使用 rm 命令以递归方式删除目录和其内容。

rmdir 命令基本语法

rmdir directory_name

其中,directory_name 是您要删除的空目录的名称。

示例

  1. 删除一个空目录:
muller@ubuntu:~$ rmdir demo2
muller@ubuntu:~$ ls
demo  demo3  Desktop  Documents  Downloads  Music  novels  Pictures  Public  salah  snap  Templates  Videos

命令后面加目录名称即可,但命令执行成功与否,取决于要删除目录是否是空目录,因为 rmdir 命令只能删除空目录。

  1. 递归删除空目录:
muller@ubuntu:~$ rmdir -p novels/uk/harrypotter
muller@ubuntu:~$ ls
demo  demo3  Desktop  Documents  Downloads  Music  Pictures  Public  salah  snap  Templates  Videos
muller@ubuntu:~$

注意,此方式先删除最低一层地目录(这里先删除 harrypotter),然后逐层删除上级目录,删除时也需要保证各级目录是空目录。

rm命令基本语法

rm [options] file or directory

options可选参数

  • -f:强制删除(force),和-i选项相反,使用 -f,系统将不再询问,而是直接删除目标文件或目录。
  • -i:和 -f 正好相反,在删除文件或目录之前,系统会给出提示信息,使用 -i 可以有效防止不小心删除有用的文件或目录。
  • -r:递归删除,主要用于删除目录,可删除指定目录及包含的所有内容,包括所有的子目录和文件。

注:rm 命令是一个具有破坏性的命令,因为 rm 命令会永久性地删除文件或目录,这就意味着,如果没有对文件或目录进行备份,一旦使用 rm 命令将其删除,将无法恢复,因此,尤其在使用 rm 命令删除目录时,要慎之又慎。

使用示例

  1. rm删除目录,如下:
muller@ubuntu:~$ rm -r demo3
muller@ubuntu:~$ ls
demo  Desktop  Documents  Downloads  Music  Pictures  Public  salah  snap  Templates  Videos
  1. rm递归删除目录,如下:
[muller@ubuntu ~]# mkdir -p /test/lm/movie/jp
#递归建立测试目录
[muller@ubuntu ~]# rm /test
rm:无法删除"/test/": 是一个目录
#如果不加"-r"选项,则会报错
[root@localhost ~]# rm -r /test
rm:是否进入目录"/test"?y
rm:是否进入目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm/movie/jp"?y
rm:是否删除目录"/test/lm/movie"?y
rm:是否删除目录"/test/lm"?y
rm:是否删除目录"/test"?y
#会分别询问是否进入子目录、是否删除子目录
  1. 强制删除
[root@localhost ~]# mkdir -p /test/lm/movie/jp
#重新建立测试目录
[root@localhost ~]# rm -rf /test
#强制删除

总结

在 Linux 系统中,创建和删除目录是常见的操作。通过 mkdir 命令可以创建目录,而 rmdirrm 命令可以删除目录。请务必小心操作,确保您的目录结构和数据安全。希望本文能帮助您了解如何在 Linux 系统中创建和删除目录。

标签:删除,ubuntu,目录,基础教程,Linux,test,rm,muller,软件测试
From: https://blog.51cto.com/u_15640304/7161945

相关文章

  • 软件测试|测试平台开发-Flask 入门:Flask HTTP请求详解
    简介上一篇文章我们介绍了flask的基本使用,编写了flask的第一个脚本。在本文中,我们将详细介绍如何使用Flask进行HTTP请求。我们将学习如何创建Flask应用程序,并通过不同的HTTP方法(GET、POST、PUT、DELETE等)发送请求。app.route()要使用不同的http方法发送请求,我们要先了解flask是如何......
  • 虚拟机linux无法实现与原机windows之间的复制和拖拽文件--已解决
    在虚拟机(我用的是Ubuntu)桌面右键打开终端,输入第一行sudoaptinstallopen-vm-tools中间全部yes,然后关闭终端然后再次在桌面打开终端,输入sudoaptinstallopen-vm-tools-desktop中间全部yes完成......
  • Linux笔记(银河麒麟V10)
    Linux下切换Python版本$whereispython$rm/usr/bin/python$ln-s/usr/bin/python3.6/usr/bin/python测试:$python--versionPython3.8.2安装Node.js-v18$curlhttps://nodejs.org/dist/v18.17.0/node-v18.17.0-linux-x64.tar.xz--outputnodejs18.tar.xz#......
  • 常见的Linux问题和故障排除方法
    以下是一些常见的Linux问题和故障排除方法:1.**无法启动系统**:-检查硬件连接是否正常,例如硬盘、内存等。-使用恢复模式或救援系统进行修复。-查看启动日志以找出问题所在。2.**网络连接问题**:-检查网络连接,确保网线或Wi-Fi正常。-使用`ping`命令测试网络连......
  • linux shell 条件语句和循环结构
    条件语句和循环结构在Shell脚本中用于控制程序的流程,让你可以根据条件决定执行不同的代码块,或者重复执行某些代码。下面是条件语句和循环结构的一些示例和说明:**条件语句:**1.**if语句**:使用`if`语句根据条件执行不同的代码块。if["$age"-gt18];thenecho"成年"el......
  • linux shell 函数与脚本调试
    **函数:**1.**函数定义**:使用`function`关键字或者直接写函数名来定义函数。functionmy_function(){echo"函数内容"}my_function(){echo"函数内容"}2.**函数调用**:直接使用函数名来调用函数。my_function3.**函数参数**:可以在函数中使用参数来传递值。......
  • Linux驱动开发详解——学习笔记
    Linux设备驱动概述计算机系统的运转需要软件和硬件共同参与,硬件是底层基础,软件则实现了具体的应用。硬件和软件之间则通过设备驱动来联系。在没有操作系统的情况下,工程师可以根据硬件设备的特点自行定义接口。而在有操作系统的情况下,驱动的架构则由相应的操作系统来定义。驱动存......
  • linux环境编程(1): 实现一个单元测试框架-2
    正片开始在之前的文章中,介绍了如何实现一个类似gtest的单元测试框架,完整的项目代码可以参考这里:https://github.com/kfggww/cutest.近期对cutest的实现做了一些修改,包括:TestSuite的声明宏,修改为TEST_SUITE增加TestSuite的声明宏TEST_SUITE_WITH.可传递Suite的......
  • Linux路由功能练习(1)
    打开一台Linux虚拟机VM1,并添加2块网卡,一个使用VMware1网卡,一个使用VMware2网卡配置VMware1网卡的IP地址为192.168.136.254/24;VMware2网卡的IP地址为192.168.137.254/24[root@nb~]#ifconfigens33192.168.136.254netmask255.255.255.0[root@nb~]#ifconfigens37192.168.1......
  • Linux性能优化宝典
    性能优化性能指标高并发和响应快对应着性能优化的两个核心指标:吞吐和延时应用负载角度:直接影响了产品终端的用户体验系统资源角度:资源使用率、饱和度等性能问题的本质就是系统资源已经到达瓶颈,但请求的处理还不够快,无法支撑更多的请求。性能分析实际上就是找出应用或系统的瓶颈,设法......