Apuntes mientras aprendo sobre software y computadoras.

Computación

Cómo usar LibreOffice desde la terminal en Linux

En este apunte rápido voy a ver cómo usar LibreOffice desde la terminal en Linux. El objetivo es poder comunicarme con el programa desde la consola, para poder realizar distintas acciones de manera directa.

LibreOffice es una suite de programas para oficina de código abierto, que ya viene instalado en varias distribuciones de GNU/Linux. Si no lo encontrás en tu equipo, realmente te recomiendo conseguirlo. Funciona muy bien y es gratuito.

Aunque supongo que ya conocés el programa , o no estarías leyendo todo esto.

Por lo general usar LibreOffice implica interactuar con el software en su modo de interfaz gráfica. Ejemplo: necesito escribir un texto, ejecuto LibreOffice Writer desde el escritorio, se abre y me pongo a escribir

Sin embargo existe la posibilidad de invocar el software desde la terminal. Hacer esto abre varias opciones que resuelven varios trabajos de forma más fácil.

Así que sin más, veamos…

¿Cómo abrir un documento nuevo de LibreOffice desde la terminal?

Esto es tal vez lo más sencillo. Básicamente consiste en escribir el comando libreoffice para que se abra la interfaz gráfica básica del programa.

libreoffice

Desde aquí luego puedo abrir alguna de las otras aplicaciones, y puede ver los últimos archivos en los que estuve trabajando.

Lo siguiente que puedo hacer es abrir la aplicación específica que necesito, por ejemplo las planillas de calculo o el procesador de texto.

Por ejemplo, parar abrir el procesador de texto Writer, escribo:

libreoffice --writer  

Para otras aplicaciones, uso el comando libreoffice en alguna de las siguientes formas:

libreoffice --writer 

libreoffice --calc 

libreoffice --draw 

libreoffice --impress 

libreoffice --base 

libreoffice --web

¿Qué hace cada una de estas apliaciones?

writerEl procesador de texto.
calcEl programa para crear planillas de cálculo.
drawEl editor de gráficos en vectores
impressCreador de presentaciones.
basePrograma para crear base de datos.
mathAplicación para fórmulas matemáticas.
webAbre un archivo HTML nuevo.

Básicamente el único problema que puedo llegar a tener es olvidar los dos guiones “–” en la opción que acompaña la opción del comando al invocarlo.

Por ejemplo si escribo:

libreoffice writer

El comando no funciona. Pero si escribo:

libreoffice --writer

Todo sale bien y consigo un nuevo archivo del procesador de textos. Esto ocurre porque si no agrego los guiones, el programa interpreta que «writer» es el nombre de un documento que estoy intentando abrir y no una aplicación particular.

Y solamente puedo usar una opción de aplicación por comando. Por ejemplo si utilizo:

libreoffice --writer --calc

No se van a abrir las dos aplicaciones Writer y Calc al mismo tiempo. Solamente se va a abrir la primera de ellas, en este caso Writer.

Y ahora que mencioné la forma larga… todavía hay una forma más rápida de llamar a libreoffice desde la terminal.

Digamos que quiero abrir un documento nuevo de writer, el procesador de texto. Puedo escribir directamente en la terminal:

lowriter

Y listo. Es un equivalente más rápido del comando “libreoffice –writer” que utilicé antes. Personalmente prefiero seguir usando el formato más largo, pero es simplemente por costumbre.

Pero las otras alternativas disponibles son:

lobaseCrea un nuevo archivo de Base.
localcCrea un nuevo archivo para Calc.
lodrawCrea un nuevo archivo de Draw.
lofromtemplateMuestra las opciones de plantillas predeterminadas.
loimpressCrea un nuevo archivo de Impress.
lomathCrea un nuevo archivo en Math.
lowebHace un archivo HTML nuevo.
lowriterCrea un nuevo archivo de Writer.

¿Qué ocurre al agregar la opción «- -global» al invocar LibreOffice en la terminal?

Cuando escribo:

libreoffice --global

Se me abre un documento en Writer. Pero no viene solo, viene acompañado de una ventana extra

Esa ventana sirve de navegador (navigator) para los contenidos de los distintos documento abiertos.

Desde el navegador puedo saltar a distintas partes del texto, revisar el pie de página, agregar un índice, mover párrafos entre archivos y otras cosas.

El navegador es una herramienta bastante extensa, por lo que no voy a estar revisándola hoy. Pero en resumen, su principal habilidad es la de permitir organizar varios textos al mismo tiempo.

Siempre poduedo abrir el navegador directamente en cualquier momento desde la interfaz gráfica. Para eso presiono F5 en el teclado o puedo hacer click en el menú “View (ver) > navigator (navegador)”.

¿Cómo abrir un archivo ya existente de LibreOffice desde la terminal?

Hasta ahora solamente conseguí crear documentos nuevos. ¿Pero cómo abrir un documento ya existente.?

Para eso tengo dos opciones.

Primero, puedo conocer el camino absoluto al documento. Por ejemplo digamos que quiero abrir el documento llamado ideas.odt para el procesador de texto.

Y conozco que el camino absoluto al documento es /home/Gus/Desktop.

Entonces escribo en la terminal el comando:

libreoffice /home/gus/Desktop/ideas.odt

Y listo, el camino absoluto le indica al programa libreoffice donde tiene que encontrar el archivo.

Lo siguiente que puedo hacer es abrir la terminal en el directorio donde se encuentra el archivo que necesito.

Luego agrego al comando libreoffice el nombre del documento que necesito abrir. Digamos por ejemplo que tengo un archivo llamado planilla500 y la terminal se encuentra en ese directorio de trabajo. Hago entonces:

libreoffice planilla500

El programa se encarga de cargar el documento en la aplicación necesaria. No es necesario indicar la aplicación específica al escribir el comando.

Otro detalle importante, si el nombre del archivo esta compuesto por varias palabras, tengo que encerrarlo entre comillas.

Por ejemplo el nombre planilla de ventas 500 lo abro como:

libreoffice “planilla de ventas 500”

¿Cómo abrir el documento de Libreoffice sin que se muestre el logo del programa al inicio?

Cuando abro Libreoffice, el programa muestra brevemente en pantalla el logo que representa la aplicación especifica.

Esta pantalla se conoce como “splash screen” y puedo evitar que este logo aparezca con la opción llamada “–nologo”.

Por ejemplo, para abrir Writer sin que se muestre el logo hago:

libreoffice --writer --nologo

¿Tiene esto alguna utilidad? La idea es que que esto hace que el programa se inicie más rápido.

En la práctica parece algo simplemente estético. En un equipo con poca potencia seguramente ayuda, pero en una computadora veloz el ahorro de tiempo es muy difícil de apreciar en un primer momento.

¿Cómo abrir los archivos de LibreOffice en modo “solo lectura” desde la terminal?

Abrir un documento en modo de solo lectura implica que solamente voy a usar la aplicación para visualizar los archivos.

La ventaja es que no se puede editar el contenido, por lo que puedo relajarme y revisarlo sin miedo a cometer errores.

Para abrir el docimento en modo lectura utilizo la opción “–view”.

Por ejemplo para abrir un archivo llamado cuento en este modo hago:

libreoffice --show cuento

Recordemos que no necesitoespecificar con que aplicación exacta LibreOffice tiene que abrir el programa, la reconoce automáticamente al iniciarse. En mi ejemplo, si el archivo cuento es un documento creado con procesador de texto (por ejemplo con extensión .odt), se abre entonces automáticamente en Writer.

¿Cómo puedo conocer la versión de LibreOffice que tengo instalada?

Este comando es muy sencillo. Para saber que versión hay instalada en la computadora escribo:

libreoffice --version

Y listo. El programa no se abre, pero la información requerida aparece escrita en la terminal.

¿Cómo iniciar LibreOffice sin el mensaje de recuperación de archivos?

En algunos cosas puede ocurrir que LibreOffice se cierre inesperadamente mientras estamos trabajando en un documento. Por ejemplo, por un problema en la computadora o un corte de la energía eléctrica.

En esos casos el archivo no se guarda correctamente, y al volver a iniciar el programa LibreOffice nos pregunta si nos gustaría tratar de recuperarlo.

Ahora, digamos que me interesa iniciar el software sin que nos haga esta pregunta.

Puede darse el caso en el que un archivo deje de funcionar correctamente y siempre nos pregunte la opción de recuperar/restaurar el documento cada vez que lo abrimos.

Para evitar eso existe la opción –no-restore ejemplificada en el siguiente comando:

libreoffice --no-restore nombredelarchivo

De ese modo, agregando el nombre del archivo que buscamos abrir, conseguimos acceder a el sin pasar por la pantalla de restauración.

¿Cómo convertir archivos desde la terminal con LibreOffice?

Esta es tal vez una de las opciones más interesantes. Sin utilizar la interfaz gráfica del programa puedo convertir documentos entre distintos formatos.

Lo primero que tengo que tener en cuenta: Si no menciono un directorio específico de salida, el archivo que convierta va a ir a parar directamente al directorio de trabajo.

Dicho de otro modo, puedo darle al comando una dirección distinta para guardar el nuevo archivo creado.

Segundo, este comando se puede utilizar para convertir varios archivos al mismo tiempo. Puedo convertir el contenido de toda una carpeta, o un solo documento por vez.

Y otra cosa. Es necesario mencionar la extension que quiero crear, pero no importa decir la extension del archivo original.

Se va a poder entender mejor con algunos ejemplos.

La opción –convert-to es con la que voy a trabajar en este caso. Digamos entonces que tengo un archivo llamado novela.odt y voy a pasarlo a otro formato.

Si quiero convertirlo a pdf hago:

libreoffice --convert-to pdf novela.odt

Por las dudas, el archivo original no se transforma. Al terminar vamos a tener dos archivos, el nuevo en pdf y el anterior en odt.

O también puedohacer más rápido:

libreoffice --convert-to pdf novela

Y de las dos formas va a funcionar. No es necesario especificar el tipo del archivo original, solo aclarar cual es el nuevo tipo de archivo que quiero crear.

Ahora, tamnien puedo darle una direccion absoluta para indicar donde se encuentra el documento a convertir.

Por ejemplo tengo el archivo ideas en la direccion absoluta /home/gus/Desktop. El comando queda:

libreoffice --convert-to pdf /home/gus/Desktop/ideas

Para convertir en epub hago:

libreoffice --convert-to epub novela

¿Y si quiero enviar el archivo a otro directorio? Digamos que voy a enviarlo a /home/gus/desktop. Entonces tengo que agregar la opción –outdir (directorio de salida) y luego la dirección absoluta de la carpeta donde va a guardarse.

En ese caso me queda como:

libreoffice --convert-to epub --outdir /home/gus/desktop novela

Entonces: primero especifico el tipo de archivo, luego el directorio de salida, luego el nombre del archivo que voy a convertir.

¿Y si busco convertir todos los archivos de una carpeta? Pera eso hacemos usos de las wildcards.

Probemos un ejemplo. Pensemos que me interesa transformar todos los documentos .odt de un directorio a pdf.

Si entonces escribo *.odt quiero decir “todos los archivos cuyo nombre comienza con .odt” y en el comando se ve de este modo:

libreoffice --convert-to pdf *.odt

Hay otras variantes que se pueden hacer al realizar este trabajo, pero con esto creo que tenemos las bases para convertir archivos rápido desde la terminal.

¿Cómo imprimir archivos directamente desde la terminal con LibreOffice

La forma más directa de imprimir desde la terminal es utilizando la opción -p dentro del comando.

Por ejemplo, para imprimir el archivo planillas hacemos:

libreoffice -p planillas

Digo que es el modo más directo porque esta opción utiliza para imprimir la impresora que tenemos marcada por defecto. Si en nuestro hogar o nuestro trabajo tenemos una única impresora conectada, esta opción va perfectamente.

Pero podemos agregar el nombre de otra impresora con la opción –pt. Por ejemplo si la impresora se llama “impre4” hacemos:

libreoffice --pt impre4 planillas

Tenemos una tercera forma de hacerlo, tal vez la más integral. Y es utilizando la opción –print-to-file en el comando.

–print-to-file nos permite especificar la impresora de salida, o podemos no especificarla y utilizar la que se encuentra conectada por defecto.

En un ejemplo básico el comando nos queda:

libreoffice --print-to-file planillas

La principal particularidad es que al mismo tiempo, todos los archivos se convierten a pdf en una carpeta de salida (que también podemos especificar, si queremos cambiarla).

O una vez más, podemos usar wildcards para imprimir todos los documentos de una carpeta. Por ejemplo, todos los .pdf:

libreoffice --print-to-file *.pdf

¿Cómo ver una presentación de impress desde la terminal?

Con este comando podemos ver una presentación de impress. No la estamos abriendo para modificar, solamente vamos a verla.

La opción para este caso es –show. Digamos que queremos abrir la presentación llamada “archivo”. Nos queda:

libreoffice --show archivo

Cuando la presentación termina, el programa se cierra.

¿Cómo iniciar LibreOffice en modo seguro?

Digamos que cometiste algún error y te gustaría volver a utilizar LibreOffice con sus opciones preestablecidas por defecto.

Utilizando la opción –safe-mode podes abrir el programa restablecido desde cero, para arreglar cualquier configuración.

El comando es:

libreoffice –safe-mode

Pero cuidado, al darle curso al comando se te presentan varias opciones sobre de que forma activar el modo seguro. Si lo haces solo por probar que sucede, podes llegar a borrar sin querer tu configuración actual y vas a tener que pasar un rato volviendo a dejarla como a vos te gusta.

Conclusión:

Mi intencion es ampliar este texto hasta que quede lo más completa posible y aun creo que me quedan cosas por probar en tanto al tema.

Sin embargo espero que la informacion te ayude a responder cómo usar LibreOffice desde la terminal en Linux.

Por el momento mantengo este texto abierto, para poder ampliarlo y mejorarlo.

¿Encontraste algun error en el material? ¿Se te ocurre alguna crítica para mejorarlo? ¿Te sirvio para mejorar tus proyectos? Me gustaría leer tu opinión.

Mientras tanto… ¡gracias por leer la página!

La seguimos en el siguiente apunte.

Recursos:

– Página del manual para LibreOffice (en inglés).

Dejar una respuesta