Pular para o conteúdo

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.
Sergio Spoladore yetlinux
Hits: 4.874 Categoria: Shell Script Subcategoria: Introdução
  • Download
  • Nova versão
  • Indicar
  • Denunciar

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.
Download clontexto.sh Enviar nova versão

Esconder código-fonte

#! /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;

Montar e desmontar ISOs do Debian e adicionar CD/DVDs ao repositório

Enviar SMS usando um telefone (Nokia)

Montando pen-drive com Dialog

Backup PostgreSql por DataBases

Criação de usuários no Samba utilizando script

Nenhum comentário foi encontrado.

Contribuir com comentário

Entre na sua conta para comentar.