Criando pastas com log configuravél e saida no terminal

Segue um script/funç(ão/ões) muito ut(il/éis) para a criação de um sistema de backup ou um outro script que necessite da criação de uma hierarquia de sistema de arquivos onde também seja necessário um "log" e/ou acções/comandos para cada saída de estado do comando mkdir com necessidades de configuração personalizada.

Sobre os exemplos de uso desta função

O único cuidado recomendado ao usar esta função é o respeito na estrutura do array enviado como parâmetro para a função. O seu numero máximo de elementos deste array deve ser 10.

PASTAS=( '/tmp/weekend/bar/beer' \
         '/tmp/weekend' \
         '/tmp/weekend/bar' \
         '/tmp/weekend/bar/beer' )

echo 'Um array de pastas como parametro';
_cria_hp ${PASTAS[@]}

Note que você poderia passar como parâmetro apenas um directório (ou vários, um por linha):

echo 'Apenas uma pasta';
_cria_hp /tmp/weekend2/
_cria_hp /tmp/weekend2/bar

Algo mais

Também poderíamos usar uma lista de um arquivo de texto plano simples onde o conteúdo seria o incremento de um laço de repetição com fim determinado (ou laço de repetição de iteração de colecção o famoso for...; do...; done) e assim estender o numero de directórios criados. Mas neste caso a função a ser chamada no bloco de código dentro do laço seria a _cria_pasta:

for DIRETORIO in $( cat /tmp/lista_de_diretorios.txt ) 
do
     _cria_pasta $DIRETORIO;
done

Enfim, como sempre, as possibilidades de uso, graças a flexibilidade do shell script são muitas.

BOA SORTE!!!

Nenhum comentário:

Postar um comentário


Nos reservamos o total direito de publicar ou não os seus comentários sem quaisquer justificativas.