El teu blog de Linux en català

De sobres és coneguda per tothom (o això crec 🙂 ) l’existència de complements per al Firefox i la resta de productes de Mozilla i derivats. Però també hi ha altres programes lliures que han adoptat aquesta estratègia per  fer més atractiva la seva utilització.

OpenOffice.org, per exemple, també té un nombre considerable de complements. Des del meu punt de vista, un dels més interessants és PDF Import. Per mitjà d’aquest complement podreu obrir fitxers pdf des del processador de textos de l’OpenOffice.org i modificar el seu contingut (sempre i quan el pdf no estigui protegit).

Aquest complement encara té consideració de versió Beta, però ja porta uns mesos així (gairebé mig any), i la veritat és que funciona força bé (fins on jo he pogut comprovar). Sí que cal tenir en compte que editar un fitxer pdf no és tan àgil com editar un fitxer odt, per exemple. Però anem a pams.

Per instal·lar el PDF Import, heu d’anar a la seva pàgina principal i baixar-vos el fitxer corresponent al vostre sistema operatiu i, en cas que sigui Linux, a l’arquitectura del vostre ordinador (32 bits o 64 bits). En el meu cas, m’he baixat el que indicava com a “Linuxx86” (32 bits). Fem clic al botó “Get it!” corresponent. El navegador ens demanarà si volem executar el fitxer directament amb l’OpenOffice.org o si volem desar-lo al disc. El millor és executar-lo directament amb l’OpenOffice.org, perquè en aquest cas el complement s’instal·larà automàticament. Si preferim desar-lo al disc (o si el navegador no ens dóna l’opció d’obrir el fitxer directament amb l’OpenOffice.org) igualment podrem instal·lar-lo des del gestor d’extensions (al menú “Eines > Gestor d’extensions”), fent clic a “Afegeix…” i indicant el fitxer que acabem de baixar-nos.

Un cop instal·lat el complement, veurem que ja podem obrir fitxers pdf. Veurem que el fitxer no s’obre amb el Writer (el processador de textos d’OpenOffice.org) sinó amb el Draw. Això és així perquè el format pdf realment té més a veure (com a mínim internament) amb una imatge que amb un document de text. I aquest és també el motiu pel qual us comentava que no és tan àgil de modificar com un document normal.

Un cop obert el fitxer, podrem modificar el text que contingui (això sí, línia a línia), els títols, les imatges, i tot el que ens interessi. També podem eliminar o afegir tot el contingut que vulguem.

El divendres passat vam canviar els servidors de lloc físic. Això ho vam fer entre d’altrs motius, perquè vam canviar de proveidor de serveis (ISP). A causa d’això, ens era necessari canviar la configuració del serivodr de DNS, i reemplaçar en els fitxers de configuració la IP vella per la IP el nou proveidor de serveis. El problema ens va venir al haver de reemplaçar per cada domini hostatjat als servidors la IP vella per la nova.

Per facilitar-nos aquesta feina tan feixuga, ens podem ajudar el programa sed. Sed significa “stream editor”, i és un editor de text que ens ajuda a processar text i ens el mostra per pantalla. Un clàssic exemple de la seva utilitat serveix per reemplaçar text, per exemple, una ip bella que tinguem per una de nova. El seu ús és tan senzill com

sed 's/ip-antiga/ip-nova/g' fitxer-on-s'ha-de-fer-el-reemplaç

El problema que tenim és que l’editor sed només ens mostrarà el canvi per pantalla. Perquè ens guardi el canvi efectuat tenim dues opcions.

La primera és guardar els canvis en un altre fitxer

sed 's/ip-antiga/ip-nova/g' fitxer-original > fitxer-nou

La segona opció ens permet guardar els canvis en el matix fitxer

sed 's/ip-antiga/ip-nova/g' fitxer-original > fitxer-nou && mv fitxer-nou fitxer-original

Ara que ja coneixem una de les moltes coses que pot fer el sed, ens centrarem a resoldre el problema inicial que teniem. Si com a servidor de DNS utilitzeu el bind, per a fer el reemplaç per a cada virtual host, podem ajudar-nos amb un petit script bash. Tansols hem d’anar en una terminal i escriure:

cd /etc/bind/zones/
for f in *
do
cd $f
sed 's/ip-antiga/ip-nova/g' ext-for > ext-for.new && mv ext-for.new ext-for
cd ..
done

I ja tenim tots els fitxers reemplaçats amb qüestió de segons.