PDA

View Full Version : Creare un dato numero di cartelle numerate in un colpo solo.


Dcromato
21-02-2010, 04:18
Ditemi che si puo.
Devo creare 150 cartelle con numerazione da 1 a 150 e nominarle tutte con un numero cresce da 1 a 150...come si fa?

greeneye
21-02-2010, 05:56
#!/bin/bash
for i in `seq 1 150`;
do
mkdir $i
done

Chiancheri
21-02-2010, 07:07
#!/bin/bash
for i in `seq 1 150`;
do
mkdir $i
done

:D

se non vuoi salvarlo, renderlo eseguibile ecc..


posizionati con la shell nella cartella dove vuoi che vengano create le 150 cartelle ed esegui lo script che hanno postato sopra così:


for i in `seq 1 150`; do ; mkdir $i ; done


che è la stessa cosa ovviamente..

Damage92
21-02-2010, 08:43
for i in `seq 1 150`; do ; mkdir $i ; done


C'è un punto e virgola di troppo:
for i in `seq 1 150`; do mkdir $i ; done
;)

Dcromato
21-02-2010, 16:02
e se dovessi nominalre in modo da 001 a 150?

greeneye
21-02-2010, 22:10
e se dovessi nominalre in modo da 001 a 150?

Ci sono diversi modi:
uno è continuare a usare seq per generare la lista di numeri con una specifica per la formattazione
#!/bin/bash
for i in `seq -f "%03g" 1 150`;
do
mkdir $i
done

Una soluzione facilmente comprensibile (ma meno versatile) è usare gli intervalli con le graffe (solo con la bash >= 4.0)
#!/bin/bash
for i in {001..150};
do
mkdir $i
echo $i
done

Con la 3 bisogna spezzare l'intervallo in 3 sub-intervall
#!/bin/bash
for i in 00{1..9} 0{10..99} {100..150};
do
mkdir $i
echo $i
done

Dcromato
21-02-2010, 22:12
ok grazie.:)