Python conosce tutti i nomi dei mesi:
mkdir $(python -c 'import calendar; print(" ".join(calendar.month_name))')
Oppure, possiamo usare Python direttamente per creare la directory:
python -c 'import calendar,locale,os;locale.setlocale(locale.LC_ALL, "");[os.mkdir(m) for m in calendar.month_name if m]'
Il cuore di quanto sopra è [os.mkdir(m) for m in calendar.month_name if m]
che crea una directory per ogni mese in calendar.month_name
. Ciò genererà un messaggio di errore e si chiuderà se esiste già una delle directory. Se vogliamo evitarlo, possiamo verificare l'esistenza delle directory prima di chiamare mkdir
:
python -c 'import calendar,os;[os.mkdir(m) for m in calendar.month_name if m and not os.path.exists(m)]'
Esempio:
$ python -c 'import calendar,os;[os.mkdir(m) for m in calendar.month_name if m]'
$ ls
April December January June May October
August February July March November September
Internazionalizzazione
Stéphane Chazelas sottolinea che quanto sopra stampa i nomi dei mesi inglesi. Per ottenere i nomi dei mesi locali, suggerisce:
python -c 'import calendar,locale,os;locale.setlocale(locale.LC_ALL, "");[os.mkdir(m) for m in calendar.month_name if m]'