Como criar maildir com script unix?

2

Eu quero criar maildirs com script unix, então pergunta é como criar um diretório como neste exemplo:

   example.com/j/o/h/john-2011.04.07.09.35.49/

se eu tiver apenas três argumentos - mailserver (example.com) e username (john) e time Eu não sei como fazer essa "parte dividida" para o script unix, como extrair as primeiras três letras para o nome de usuário john como no exemplo acima. Obrigado antecipadamente!

    
por user77473 07.04.2011 / 07:53

1 resposta

3

No bash, você pode usar a correspondência de substring ${} para obter uma única letra de uma string:

coredump@anita:~$ x="john"; echo ${x:0:1}
j
coredump@anita:~$ x="john"; echo ${x:1:1}
o
coredump@anita:~$ x="john"; echo ${x:2:1}
h

Então, em seu script, você pode atribuir essas letras a variáveis e usá-las nos comandos mkdir para criar sua estrutura de diretórios, algo assim, suponho:

FIRST=${USERNAME:0:1}
SECOND=${USERNAME:1:1}
THIRD=${USERNAME:2:1}

mkdir $SERVER/$FIRST/$SECOND/$THIRD/${USERNAME}-${DATE}/
    
por 07.04.2011 / 08:02