Shell Script + HTML + CSS + PDF = ????

Estava um dia pensando: "Como seria um conversor de "texto" para pdf com interface web, escrito (com engrenagem) em Shell Script ?". Bem, este foi mais um desafio que nunca sei onde vai parar.

Confesso que depois de iniciar o processo fiquei intrigado com tanta dificuldade. Primeiro, limitações da linguagem Shell Script. Segundo, isso vai servir para alguma coisa ? “Tanto faz, quero ver é o resultado do desafio”. Dei o nome de Pedef, seja lá o que isso queira dizer. Ele faz tudo muito grosseiramente, por isso um bigorna como logomarca. Figura 1

Bem, como instalar ? Os passos seguintes foram testados no Debian 5.0 e no Urubuntu 9.04. Deve funcionar tranquilamente nas versões mais novas, ou não. OBS: Levando em consideração que você tem permissões de root.

Criar a pasta download em /usr/local e entra nela.

# mkdir /usr/local/download

# cd /usr/local/download

Faz o download do pedef.tar.gz

# wget “http://sites.google.com/a/itnatal.com.br/alunos/home/pedef.tar.gz?attredirects=0&d=1” -O pedef.tar.gz

Desempacotar e descompactar o arquivo

# tar zxfv pedef.tar.gz

Instalar pacotes necessários

apt-get install enscript gs imagemagick apache2 xpdf-utils

Editar o arquivo de exemplo do virtual host e copiar para sites-enable do /etc/apache2 (Use o seu editor preferido)

cd /usr/local/download/pedeF/doc/apache

Exemplo de configuração do virtual host.


<VirtualHost 192.168.0.168:80>
ServerName pedef.dominio.com.br
DocumentRoot /usr/local/download/pedeF/html
Alias /pedef/ /usr/local/download/pedeF/html
Alias /cgi-bin/ /usr/local/download/pedeF/cgi-bin/
<Directory “/usr/local/download/pedeF/cgi-bin/”>
Options Indexes MultiViews ExecCGI
AddHandler cgi-script .cgi .sh
AllowOverride None
Order allow,deny
Allow from all
</Directory>
</VirtualHost>

OBS: Cuidado com o caminho do pedef. Ele deve apontar para o path correto.

Depois de editado, copiar o arquivo de exemplo. Reload no apache

# cp pedef /etc/apache2/sites-enabled/

# /etc/init.d/apache2 reload

Este é o processo básico. Se ocorrer erros, leia com atenção e revise os caminhos. Depois é só acessar usando o seu navegador padrão. Detalhe, lembre de apontar o registro pedef para o ip correto no servidor de DNS. Se não cadastrou o host no DNS, teste apenas com o endereço ip. Exemplo http://192.168.0.168

Vídeo: PedeF

Advertisements

7 thoughts on “Shell Script + HTML + CSS + PDF = ????

  1. Rapaz acho que é muito útil sim, vou até fazer uns testes aqui pra achar uma utilidade =P Por que tú não publica em algum repositório opensource? Não me lembro de ter visto algo parecido! =)

  2. PS: Quanto a utilidade: Acho que algo parecido deveria ser integrado ao email de todos os professores que insistem em mandar arquivos .docx e .xlsx. Principalmente aqueles que enviam um .docx só com um bitmap dentro.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s