Página 1 de 2 12 ÚltimoÚltimo
+ Responder ao Tópico



  1. #1
    quecosuix
    bom dia,
    gostaria de fazer um comando com o grep que todo o arquivo que tivesse a palavra "mp3" fosse apagado..

    maneira errada que fiz...

    grep -ir mp3 * | rm {} /;

    valeu,

    Cleiton

  2. vc pode fazer assim o

    find / -name *.mp3 >> /mp3

    ele ira criar um arquivo assim

    /222.mp3
    /2d22.mp3
    /22.mp3
    /mydnsche/var/www/pages/freon.com.br/home/Diversas/Menina.mp3




    ele ira procurar em todo o disco e jogar o resultado neste arquivo

    dai vc cria um exec par aapagar

    #! /bin/sh
    for apagar in `cat /mp3`; do
    rm $apagar
    done
    eu façi assim



  3. #3
    Fernando Scherrer
    Salve!

    O problema em se usar um:
    Código :
    #! /bin/sh
    for apagar in `cat /mp3`; do
    rm $apagar
    done

    é que se o nome do arquivo tiver espaço não vai funcionar (ou se tiver sorte poderá deletar outro arquivo, hehe). Acrescente um novo IFS, para que deixe de ser espaços e passe a ser quebra de linha, e também envolva o $apagar entre aspas:
    Código :
    #! /bin/sh
    IFS="
    ";
    for apagar in `cat /mp3`; do
    rm "$apagar"
    done

  4. Tente utilizar:

    find / -name *.mp3 -exec rm {} \

    Mas dependendo do tamanho da saída ele pode não funcionar... e vou aproveitar para perguntar pra vocês o que pode ser o problema
    Uma vez eu impelentei esse comando para apagar arquivos de impressão gerados pelo sistema aqui da empresa que trabalho, em média de 1000/1500 arquivos diários, e não funcionou me retornando essa mensagem:
    /usr/bin/find: Too many arguments

    Não lembro exatamente a mensagem de erro, mas é algo assim, amanhã no trampo posso ver certo, se precisar.

    O que pode ser isso ? Configurações do kernel ? :?

    Para conseguir apagar os arquivos, fiz um script parecido com os dos amigos acima.
    Mas não corro o risco de nomes de arquivos com espaços ou caracteres especiais.

    Valewww



  5. galera..

    adaptei um script q já tinha aqui...

    fiz alguns testes e funcionou legal....

    ----------------------------------------
    #!/bin/bash
    find / -name "*.mp3" > /root/mp3.db
    arquivo=`cat /root/mp3.db`
    lines=$(echo "${arquivo}" | wc -l)
    currline=;oldline=;
    for ((counter=1; counter <= $lines; counter=$((${counter} + 1)))); do
    currline="$(echo "${arquivo}" | head -n ${counter} | tail -n 1)"
    if [ "${currline}" != "${oldline}" ]; then
    oldline="${currline}"
    rm "${currline}"
    #echo "${currline}"
    fi
    done
    ----------------------------------------

    Obs.: Verifiquem possíveis erros neste script, não me responsabilizo por perca de dados..

    valew
    []'s






Tópicos Similares

  1. Como criar um arquivo de conexão ASP usando JDBC para postgre
    Por suwmikrotik no fórum Servidores de Rede
    Respostas: 1
    Último Post: 11-02-2011, 11:13
  2. aumentar partição 100 deletar arquivos
    Por LenTu no fórum Servidores de Rede
    Respostas: 11
    Último Post: 22-09-2006, 14:54
  3. script para alterar arquivos de configuração
    Por brunaocomanda no fórum Linguagens de Programação
    Respostas: 0
    Último Post: 21-12-2004, 14:08
  4. comando no linux para excluir arquivos por data
    Por ELIANDRO no fórum Servidores de Rede
    Respostas: 1
    Último Post: 18-11-2004, 07:39
  5. Black-box janela tipo explorer para manuser arquivos!
    Por joe no fórum Servidores de Rede
    Respostas: 1
    Último Post: 13-05-2003, 07:59

Visite: BR-Linux ·  VivaOLinux ·  Dicas-L