Python conhece todos os nomes dos meses:
mkdir $(python -c 'import calendar; print(" ".join(calendar.month_name))')
Ou, podemos usar python diretamente para criar o diretório:
python -c 'import calendar,locale,os;locale.setlocale(locale.LC_ALL, "");[os.mkdir(m) for m in calendar.month_name if m]'
O coração do exposto acima é o [os.mkdir(m) for m in calendar.month_name if m]
que cria um diretório para todos os meses em calendar.month_name
. Isso irá gerar uma mensagem de erro e sair se algum dos diretórios já existir. Se quisermos evitar isso, podemos testar a existência de diretórios antes de chamar mkdir
:
python -c 'import calendar,os;[os.mkdir(m) for m in calendar.month_name if m and not os.path.exists(m)]'
Exemplo:
$ 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
Internacionalização
Stéphane Chazelas ressalta que o texto acima imprime nomes de meses em inglês. Para obter nomes de meses locais, ele sugere:
python -c 'import calendar,locale,os;locale.setlocale(locale.LC_ALL, "");[os.mkdir(m) for m in calendar.month_name if m]'