迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

Bash 创建目录

作者:迹忆客 最近更新:2023/03/17 浏览次数:

本文演示了如何在 Bash 中不存在文件夹的情况下创建该文件夹。

如果 Bash 中不存在文件夹,请创建一个文件夹

我们使用 mkdir 命令在 Linux 中创建一个新目录。我们使用 mkdir -p 来避免错误消息。

使用 mkdir 命令,你必须一个一个地创建每个文件,但是使用 mkdir-p,它会立即创建它。

如果 Bash 中不存在一个文件夹,我们可以通过两种不同的方式创建一个文件夹。我们可以通过在函数中使用 while 循环或递归方法来做到这一点。

我们可以通过在 Bash 脚本中使用这个 if[ -d $DirName ] 来检查目录是否已经存在的条件。我们将创建一个 Bash 函数,它将目录名称作为用户的输入。

如果目录不存在,它将创建一个新目录。如果目录已经存在,它会提示用户输入不同的名称。

在 Bash 中使用 while 循环创建文件夹

while 循环中,我们将使用 Bash 脚本中的 read 命令从用户那里获取输入。用户将输入他想要创建的目录名称。

如果在这种情况下输入的目录名称已经存在,if[ -d $Dirname] 条件将返回 true。它将向用户显示该目录已存在的消息。

它将提示用户输入不同的目录名称。这种检查条件将一直持续到用户在输入中输入一个尚不存在的目录名称。

当用户输入一个在这种情况下不存在的目录名称时,if[ -d $Dirname] 条件将返回 false,并且 else 块将执行以创建新目录。

它将向用户显示 the new directory has been successfully created,循环将中断。

示例代码:

#!/bin/bash
function mkdirectory() {
while [ true ]
do
if [ -d $DirName ]
then
echo "Directory Already exists:"
echo "Enter Different Name: "
read DirName
else
mkdir "$DirName"
echo " the new directory has been successfully created:  $DirName"
break
fi
done
}
echo "Enter New DirName: "
read DirName
mkdirectory

Dir1 是使用 bash 中的 while 循环和循环中断创建的

显示 Dir1 和 Dir1 已存在的消息

在 bash 中使用 while 循环成功创建了 Dir3

在 Bash 中使用递归方法创建文件夹

在递归方法中,用户通过参数给出输入。用户输入这样的目录名称,./rcrdir.sh Dir

rcrdir.sh 是 Bash 文件名,Dir 是用户想要创建的目录名。 $1 用于获取第一个参数(目录名)。

如果用户输入的目录名称在这种情况下已经存在,if[ -d $1] 条件将返回 true。它将向用户显示该目录已存在的消息。

它将提示用户输入不同的目录名称。用户输入另一个名称。

此检查将继续进行,直到用户在输入中输入唯一的目录名称。

当用户输入一个在这种情况下不存在的目录名称时,if[ -d $1 ] 条件将返回 false,并且 else 块将执行以创建新目录。

它将向用户显示 the new directory has been successfully created,然后循环中断。

示例代码:

#! /bin/bash
function mkdirectory(){
if [  -d $1  ]
then
echo "Directory aleady exists: "
echo "Enter different name:"
read directory
mkdirectory  $directory
else
mkdir $1
echo " the new directory has been successfully created: $1"
fi
}
mkdirectory $1

Dir1 是在 bash 中使用递归方法创建的

显示 Dir1 已存在的消息

使用 bash 中的递归方法创建的 Dir2

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

如何在 CentOS 中获取 IP 地址

发布时间:2023/05/04 浏览次数:108 分类:操作系统

这篇简短的文章是对 CentOS 的一个简短介绍,然后简要讨论了我们如何使用命令行界面 (CLI) 在 CentOS 中获取服务器 IP 地址。

在 Linux 中更新 YUM

发布时间:2023/05/04 浏览次数:82 分类:操作系统

本文介绍了 Linux 中的 yum update 命令。本文将教我们如何在 Linux 中更新 YUM,以及如何在 Linux 系统上安装、更新、删除、查找和管理包。

在 Linux 中安装 Deb 文件

发布时间:2023/05/04 浏览次数:130 分类:操作系统

本文介绍如何在 Linux 中安装 deb 文件。在这篇 Linux 文章中,我们将学习如何在 Linux 系统上安装 .deb(Debian 软件包)文件。 我们还将看到如何在安装后删除 .deb 文件。

Linux 中的 lsof 命令

发布时间:2023/05/04 浏览次数:82 分类:操作系统

在这篇 Linux 文章中,我们将了解 Linux 操作系统中的 lsof 命令。 我们将看到如何在 Linux 中将此命令用于不同目的。

Linux 中的 ps aux 命令

发布时间:2023/05/04 浏览次数:69 分类:操作系统

本篇文章将讨论 Linux 中的 ps aux 命令。如果将 aux 快捷方式与 ps 命令一起使用,它将显示用户需要的最多信息,并可以为您提供系统运行进程的当前状态。

Linux 中的 NTP

发布时间:2023/05/04 浏览次数:137 分类:操作系统

本篇文章将讨论 Linux 中的 ntp。NTP 是大多数 IT 基础设施使用的核心协议。 使用它的目的是同步日期和时间信息。

在 Bash 中创建进度条

发布时间:2023/05/04 浏览次数:164 分类:操作系统

这是有关在 Bash 中创建进度条以显示正在运行的命令或进程的进度的指南。本文将探讨在 Bash(Linux 和 macOS 的默认 shell)中向 shell 脚本添加进度条的几种方法。使用 pv 命令在 Bash 中创建进度条

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便