Apagar arquivos por nome de forma recursiva

Comandos | terça-feira 20 outubro 2009 04:28 | 2.733 views

Comando para apagar os arquivos a partir de um diretorio de modo recursivo
ou seja arquivos que contenham por exemplo wget-log no começo do nome.

# find . -name ‘wget-log*’ -exec rm -f {} \;

Outro exemplo é apagar todos os arquivos com extensão .mp3 ou .MP3 (-iname) da pasta home dos usuarios.

# cd /home/usuario
# find ./ -iname ‘*.mp3’ -exec rm -f {} \;

Pode ser util ainda para quem utilizam o CVS (ou SVN) e quer apagar as pastas de controle
exemplo:

# find . -name CVS -exec rm –rf {} \;

* usando -iname no find lista arquivos e Arquivos ou ArQuIvOS (case insensitive)
ou seja: não fara distinção de maiúsculas e minúsculas no nome de arquivos ou pastas,
o que não acontece se usar apenas -name.

Script para remover conteudo de arquivos

Comandos | domingo 20 setembro 2009 23:25 | 1.195 views

O Script abaixo é usado para remover tags, strings ou intervalos de conteudo de diversos arquivos.

Evitando editar cada arquivo manualmente.

Arquivo remove.sh

#!/bin/bash

sed 's/<iframe\ src.*<\/iframe>//g' < "$1" > "$1.tmp"

mv "$1.tmp" "$1"

Comando para ser utilizado junto com esse arquivo

#find . -iname ‘*.php’ | xargs -i ./remove.sh {} \;

Obs: geralmente tem que adaptar algumas ER para que funcione.

* não esquecer de tornar o script “remove.sh” executavel

#chmod +x remove.sh

find . significa que vai procurar a partir de onde vc está,

assim sendo é melhor que esteja na raiz de seu site

juntamente com o arquivo “remove.sh”

Ler mais

« Página anterior