Dizinha Linux
Ajude-Nos
Agradecimentos
Changelog
Download
Fórum
Screenshots

Projetos Internos
MPDizinha
PainelX

Artigo
Criando um TEMA no Blanes
Jogos Antigos no Linux?
Baixar fotos de um site?
Organizar seus textos!

Manual
Problema no BOOT!

Manual Remaster

Projetos de Amigos
CDI-AL
Kalango Linux
KernelBR
Kurumin Linux
LiveLinux
NeoDizinha
PainelX
Ralobao
UnixGirls
ZappWM


Shell Script para organizar seus textos!
1. Introdução
2. O Script!
3. Explicando ( linha a linha ) o Script!
4. Final

1.Introdução
As vezes bato a cabeça e depois saio achando que sou escritor!
Costumo escrever todos meus textos em "texto plano" e depois publico aqui no site mesmo ( http://dizinha.codigolivre.org.br/pi_livro.php" ).
Para não ter que ficar organizando a mão, criei um shell script que gera um HTML com todos meus textos e daí é só eu publicar o HTML gerado no site!

2. O Script
ls *COMPLETO > SAIDA
rm -f saida.html

aux=0

echo '<p id="menu">' >> saida.html

cat SAIDA | while read LINHA; do
aux=`expr $aux + 1`
nome=`echo $LINHA | sed s/' - COMPLETO'/'/g`
echo $aux'. <a href="#'$nome'">'$nome'</a><br>' >> saida.html
done 

echo '</p>' >> saida.html

cat SAIDA | while read LINHA; do
nome=`echo $LINHA | sed s/' - COMPLETO'/'/g`
echo '<p><a name="'$nome'">'$nome'</a><br>' >> saida.html

	cat "$LINHA" | while read LINHA2; do
	echo "$LINHA2 <br>" >> saida.html
	done

echo '</p><hr>' >> saida.html
echo ' '  >> saida.html

done

rm -f SAIDA

3. Explicando ( linha a linha ) o Script
Atenção! É necessário saber um pouco de HTML para entender completamente o script!

ls *COMPLETO > SAIDA Lista todos arquivos que terminam com a palavra COMPLETO ( eu coloco textos completos e não completos na mesma pasta ) e joga o resultado disso em um arquivo texto chamado SAIDA!

rm -f saida.html Apaga o ultimo HTML gerado!
aux=0 Define "aux" como 0; vai servir para pôr os textos de forma numerada no HTML
echo '<p id="menu">' >> saida.html Escreve a parte inicial do HTML no arquivo saida.html
cat SAIDA | while read LINHA; do Lê o arquivo "SAIDA", cada linha escrita será armazenada na variável "$LINHA"

aux=`expr $aux + 1` Soma 1 a variável aux ( para numerar os textos no HTML )
nome=`echo $LINHA | sed s/' - COMPLETO'/'/g` Define "nome" igual a $LINHA, mas retirando o final " - COMPLETO" ( meus arquivos sempre tem um nome como em "Caminhos - COMPLETO" )

echo $aux'. <a href="#'$nome'">'$nome'</a><br>' >> saida.html Imprime AUX ( numeração do texto ) e cria um link vertical, no HTML, para o texto!
echo '</p>' >> saida.html Escreve o final de um parágrafo, para o HTML não ficar "quebrado"

cat "$LINHA" | while read LINHA2; do Lê o texto ( poema ) escrito
echo "$LINHA2 <br>" >> saida.html Imprime cada linha do poema e acrescentando uma tag
no fim da linha no arquivo "saida.html"

echo '</p><hr>' >> saida.html Fecha um parágrafo de HTML e adiciona uma barra depois do texto!
rm -f SAIDA Apaga o arquivo "SAIDA"

4. Final
Agora Basta Abrir o arquivo "saida.html" copiar o código gerado no HTML do seu site.
Ou adaptar o código do script para que ele já gere o HTML de acordo com o design do seu site!