在bash中增加目录名称

Lur*_*rch 1 linux bash date

我有一个bash脚本,通过该脚本,我想在每次使用日期启动时创建一个带有日期和增量编号的目录

 DATE=$(date +"%d%m%Y")
Run Code Online (Sandbox Code Playgroud)

我希望输出为300514-1,然后在重新启动300514-2之后,依此类推,但文件需要存储到创建的目录中,即

SAVEDIR=/home/files/$DATE-*
Run Code Online (Sandbox Code Playgroud)

hek*_*mgl 6

您可以使用以下脚本:

#!/bin/bash

date=$(date +"%d%m%Y")
n=1

# Increment $N as long as a directory with that name exists
while [[ -d "/home/files/${date}-${n}" ]] ; do
    n=$(($n+1))
done

mkdir "/home/files/${date}-${n}"
Run Code Online (Sandbox Code Playgroud)

请注意,该脚本在竞争条件下并不安全,这意味着您无法在许多并行进程同时调用该脚本的环境中使用该脚本。