Clontexto
Script para bash que lê um arquivo de "configuração" com uma lista de palavras e depois entra interativamente em uma lista de subdiretórios varrendo arquivos de texto um a um e substituindo expressões por outras.
Foi testado em textos menos complexos distribuídos em árvores de diretórios. Pode ser usado por exemplo em diretórios de páginas de HTML.
Se descobrir alguma utilidade, me avise.
Foi testado em textos menos complexos distribuídos em árvores de diretórios. Pode ser usado por exemplo em diretórios de páginas de HTML.
Se descobrir alguma utilidade, me avise.
Descrição
Script para bash que lê um arquivo de "configuração" com uma lista de palavras e depois entra interativamente em uma lista de subdiretórios varrendo arquivos de texto um a um e substituindo expressões por outras.
Foi testado em textos menos complexos distribuídos em árvores de diretórios. Pode ser usado por exemplo em diretórios de páginas de HTML.
Se descobrir alguma utilidade, me avise.
Foi testado em textos menos complexos distribuídos em árvores de diretórios. Pode ser usado por exemplo em diretórios de páginas de HTML.
Se descobrir alguma utilidade, me avise.
#! /bin/bash
# clontexto - Deve ter um jeito mais facil de se fazer essa @#$%!! de serviço.
[[ $# -ne "3" ]] && echo -e "Parametros errados.\nUse ./$0 " && exit;
[[ ! -f $1 ]] && echo "$1: Arquivo inexistente" && exit;
[[ ! -d $2 ]] && echo "$2: Diretorio inexistente" && exit;
[[ -d $3 ]] && echo "$3: Destino existente" && exit;
direc () {
cd $1;
q=`pwd`;
d=${q/$dir_mod/};
[[ ! -d $dest_dir/$d ]] && mkdir $dest_dir/$d;
for i in *; do
[[ -d $i ]] && direc "$i"
[[ -f $i ]] && sed "${f[*]}" "$i" > "$dest_dir/$d$i";
done;
cd ..
}
arq_conf=$1;
dir_mod=$2;
dest_dir=$3;
t=1;
while read i; do
f[$((t++))]="s/${i/://}/g;";
done < $arq_conf;
c=`pwd`; t=1;
direc "$dir_mod" "$dest_dir";
cd $c;