Como dividir uma pasta na subpasta no script bash

0

Eu tenho uma pasta recebendo o arquivo * .DAT continuamente a cada segundo. Eu quero dividir essa pasta em duas pastas onde o pai (pasta que eu quero dividir em dois) pasta irá mover todos os arquivos *. DAT que recebe nesses dois sub-pasta na forma round robin. Existe alguma maneira de fazer isso por bash scripting?

    
por Md. Kawsaruzzaman 15.11.2017 / 10:32

1 resposta

1

Existe o seu script:

#!/bin/bash
# enter the source dir
cd /tmp/a

# set initial subdir
subdir="b"

# run forever
while true
do
        # get first available *.DAT file
        newfile='ls -1 *.DAT 2>/dev/null | head -n1'
        if [ "$newfile" != "" ]
        then
                # if the .DAT file exists, move it
                mv ./$newfile /tmp/$subdir/

                # replace subdir for next loop iteration
                if [ "$subdir" == "b" ]
                then
                        subdir="c"
                else
                        subdir="b"
                fi
        else
                # nothing found, wait 1 second
                sleep 1
        fi
done

Eu usei estrutura plana para testar

/tmp/a # source dir
/tmp/b # destdir 1
/tmp/c # destdir 2

Você terá que modificá-lo para sua situação, mas isso deve funcionar.

    
por 15.11.2017 / 10:53