2014-05-21 95 views

回答

4

printf可以格式化一系列數字爲十六進制:

mkdir $(printf "%02x " {0..255}) 

for dir in */ 
do 
    mkdir $(printf "$dir/%02x " {0..255}) 
done 
+0

我怎麼能在這些文件夾中再次有名稱從00到ff – user3452721

+0

的文件夾代替聰明的解決方案,使用for循環 –

+3

@thatotherguy:'mkdir -p $(printf「%04x」{0。 .65535} | sed's/\(.. \)\(.. \)/ \ 1 \/\ 2/g')' – rici

2

借款從@thatotherguy答案的核心理念。

dirs=$(printf "%02x " {0..255}) 
for d1 in $dirs 
do 
    mkdir d1 
    for d2 in $dirs 
    do 
     mkdir d1/d2 
    done 
done 
0

我使用不同的命令版本:

join -j2 <(seq 0 255) <(seq 0 255) | xargs -n256 printf "%02x/%02x\n" | xargs mkdir -p 
0

for x in {{0..9},{a..f}}{{0..9},{a..f}}; do mkdir -p $x/{{0..9},{a..f}}{{0..9},{a..f}}; done

這將使256名的目錄,每個子目錄256,共計65,536個子目錄。

相關問題