This question already has answers here:
bash create dir with sequential numbers

(5 个回答)


8年前关闭。




我想要一个 bash 脚本来创建名为“exam_folder”的文件夹,如果这个文件夹已经存在(例如,我会再次运行脚本),脚本将创建“exam_folder_1”,如果该文件夹存在我想要创建“exam_folder_2”等的脚本。我想聪明地拥有它:)
我得到了这样的东西:
function create_folder {

if [ -d "$1" ]; then # if exists
    mkdir $1_`i_max` # function i_max would find out the max number and add 1
else
    mkdir $1
fi }

感谢您的帮助。

最佳答案

你可以这样做:

max=`ls -1d exam_folder* | tr -dc '[0-9\n]' | sort -k 1,1n | tail -1`
mkdir exam_folder_$((max + 1))

请注意,如果您同意,它不会填充序列中的“漏洞”。

关于bash - 使用 mkdir 创建名称递增的目录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16297295/

10-16 00:36