+ Responder ao Tópico



  1. #1
    Super_Diaulas
    Visitante

    Padrão Tratar Whitespace de forma correta

    fiz um script para fazer backup de alguns tipos de arquivo (.doc .xls)
    para algumas pessoas do meu trampo

    for i in \´`cat $TEMP2 `\´; do

    cp --parent -vrf $i /bkp_ide/home
    sleep 0,1

    done
    essa é somente uma parte que interessa, esse TEMP2 foi gerado através do `find` e depois selecionei oq queria com o cat + grep

    Mas os arquivos que contém espaço não são copiados, o ´for´ interpreta o espaço como nova linha

    logo um arquivo agenda telefonica.doc
    tenta ser copiado como
    cp agenda
    cp telefonica.doc

    Entenderam? ele separa o nome do arquivo

    mas tem um fato curioso, os arquivos com espaço de 2 usuários quaisquer copia de forma normal enquanto os arquivos dos outros não
    :toim:

  2. #2
    Livio
    Visitante

    Padrão Tratar Whitespace de forma correta

    Dessa maneira vc pode verificar se funciona, pois ele apenas mostrará a saída do comando:

    awk '{print "cp --parent -vrf \""$0"\" /bkp_ide/home/ "}' $TEMP2

    Se ser certo, pode repetir com |sh -x no final para ele executar:

    awk '{print "cp --parent -vrf \""$0"\" /bkp_ide/home/ "}' $TEMP2 |sh -x

  3. #3
    Super_Diaulas
    Visitante

    Padrão Tratar Whitespace de forma correta

    esqueci de postar um detalhe, com o find funciona, mas se eu usar o locate para gerar o arquivo ele não funfa..............





    Dessa maneira vc pode verificar se funciona, pois ele apenas mostrará a saída do comando:

    awk '{print "cp --parent -vrf \""$0"\" /bkp_ide/home/ "}' $TEMP2

    Se ser certo, pode repetir com |sh -x no final para ele executar:

    awk '{print "cp --parent -vrf \""$0"\" /bkp_ide/home/ "}' $TEMP2 |sh -x


    Funcionou em partes.............criou um loop infinito

  4. #4
    Super_Diaulas
    Visitante

    Padrão Tratar Whitespace de forma correta

    fiz um teste aqui...

    Coloquei um arquivo em que cada linha é um número
    Ex:
    1
    2
    3

    Neste caso ele faz 3 loops

    se eu fizer outro arquivo que vai até 5, ele "loopa" 5 vezes

  5. #5
    Super_Diaulas
    Visitante

    Padrão Tratar Whitespace de forma correta

    sou um cabeçudo mesmo, esqueci de tirar o for, por isso dava loop