bash脚本在目录中创建多个目录

时间:2012-04-24 10:30:08

标签: bash

我想在nix中创建这样的目录结构:

mkdir -p 1,2,3,4,5,6,7,8,9并且在每个文件夹中我都想要文件夹1,2,3,4,5,6,7,8,9

我已经开始编写一个这样的简单循环(一直到文件夹2),但这似乎效率低下。

#!/usr/bin/env bash   
for i in 1 2 4 5 6 7 8 9; do mkdir -p 1/{1,2,3,4,5,6,7,8,9} $i, mkdir -p  2/{1,2,3,4,5,6,7,8,9} $2; done

有更好的方法吗?

3 个答案:

答案 0 :(得分:6)

这应该有帮助(需要bash):

mkdir -p {1,2,3,4,5,6,7,8,9}/{1,2,3,4,5,6,7,8,9}

一些较新版本的bash也允许这样做:

mkdir -p {1..9}/{1..9}

答案 1 :(得分:0)

听起来很简单,除非我误解了:

#!/bin/sh
for i in `seq 1 9`; do
  for j in `seq 1 9`; do
    mkdir -p $i/$j
  done
done

答案 2 :(得分:0)

Perl解决方案。

for($counter = 1; $counter <= 9; $counter++)
{
        `mkdir -p $counter/{1..9}`; //Executing Unix Command
}