Dedicado a mis proyectos en Gambas ,un lenguaje de programación parecido al Visual Basic + Java pero ampliamente mejorado y...¡¡para gnu/linux!!.La potencia del gnu/linux sumada a la facilidad del Basic



Consultas, Desarrollo de programas y petición de presupuestos:



Mostrando entradas con la etiqueta terminal. Mostrar todas las entradas
Mostrando entradas con la etiqueta terminal. Mostrar todas las entradas

viernes, 25 de mayo de 2018

Tips: Como contar el numero de veces que aparece una palabra en un fichero



Tips: Como contar el número de veces que aparece una palabra en un fichero

Combinando el comando grep con el comando wc, es así se sencillo:


$grep -oi palabra fichero | wc -l


Con este orden  nos devolverá el número de veces que aparece la "palabra" en el fichero.

Ejemplo:

$grep -oi amor poema.txt | wc -l

Nos contará las veces que aparece la palaba amor (también Amor o AMOR, por el parámetro -i) en el fichero poema.txt



jueves, 17 de mayo de 2018

La Terminal de Windows: CMD Comandos para obtener listados de ficheros en directorio actual y subdirectorios

La Terminal de Windows: CMD Comandos para obtener listados de ficheros en directorio actual y subdirectorios

En windows también existe la terminal, y se llama CMD, aunque es poco potente comparada con la de gnu/linux, hay dos comandos que son útiles para conseguir los datos de  directorios y ficheros, y con el operador ">" lo podemos guardarlos en un archivo de texto plano que nos puede  servir para crear listados o realizar búsquedas.



Conseguir lista de ficheros y subdirectorios en formato LISTA:


  • dir /s > C:/lista.txt


Conseguir lista de ficheros y directorios en formato ARBOL:

  • tree /f /a >ArbolFicheros.txt


Para acceder fácilmente a la terminal, estando en un directorio concreto, en el explorador de ficheros,  pulsamos la tecla de Shift (mayúsculas) :



 y a la vez hacemos click con el botón derecho del ratón, en un sitio donde no haya archivos ni ficheros, entonces  se despliega un menú, donde vemos la opción de "abrir ventana de comandos aquí", y así se nos abrirá una terminal justo en el directorio que estemos en el explorador de ficheros.

Nota:
Con el comando cd, podemos también nos podemos ir moviendo por los directorios desde la terminal


Referencias:

http://foros.cristalab.com/listar-directorios-y-sus-contenidos...-guardar-en-txt.-t55937/
https://www.discoduroderoer.es/comando-cd-en-windows/

domingo, 28 de mayo de 2017

Como Decolorear la salida de un comando (quitar colores)

Como Decolorear la salida de un comando (quitar colores)

Colorear la salida de un comando, es muy útil, porque hace más  vistosa la información que muestra por la terminal, pero.... ¿que pasa si queremos analizar el texto que sale? Los caracteres especiales que se usan para colorear el código, son un incordio y nos molestan a la hora de extraer el de texto plano..



Ejemplo de codigos que se usan para colorear un texto para que salga por consola 

Bien, pues preguntando en el foro de gambas-es.org, Shordi ha compartido un código que elimina  estos código de colores, y convierten en un texto decoloreado (sin colores), fácilmente analizable.

Para ello usa el comando sed y expresiones regulares.


En la terminal seria algo así como:


$cat SalidaConColores.txt |sed -r "s/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g"  >SalidaSinColores.txt



En gambas 3, la función sería:

Public Function decolorar() As String 'devuelve un listado con información detallada del sistema
 
      Dim slistado As String
      'adaptándolo a tu fichero (y al path donde lo tengas, claro):
      Shell "cat ~/Escritorio/l.txt |sed -r \"s/\\x1B\\[([0-9]{1,2}(;[0-9]{1,2})?)?[m|K]//g\" " To slistado
      Return slistado
End


Os dejo un video explicando su uso en la terminal:




Fuentes:
https://www.gambas-es.org/viewtopic.php?t=6401&p=38370#p38370
https://robologs.net/2016/03/31/como-colorear-el-output-de-la-terminal-en-linux/



miércoles, 24 de mayo de 2017

Telegram messenger CLI (Telegram-Cli): telegram en la consola


Telegram messenger CLI (Telegram-Cli): 

telegram en la consola




¿porque telegram en la consola? Cuando no tengamos interfaz gráfico  instalado (en servidores por ejemplo), pero también para usarlo junto a otros programas (siendo estos el front-end).

Pasos para instalación mediante compilación:

0º Instalar git, si no lo teneis instalado...
$sudo apt-get install git

1º Clonar el repositorio de tg:
$git clone --recursive https://github.com/vysheng/tg.git && cd tg

2º Instalar librerias necesarias para compilar (para Ubuntu/Debian) 
$sudo apt-get install libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make
3º Compilar:
$./configure
y luego 
$make
Nota: tardará un ratito y salen muchos mensajes en la consola...

4º Entonces  ejecutar el siguiente comando
$bin/telegram-cli  -k tg-server.pub
Que nos va a pedir nuestro número de teléfono (hay que poner delante el código del pais) , para enviarnos un codigo que tendremos que introducir.

Y ya podemos enviar mensajes!!!!

El programa telegram-cli va a estar situado en esta ruta:

~/telegram-cli/tg/tg/bin 

Nota: ~ es vuestra ruta de usuario, por ejemplo /home/usuario/

Ejecutando, escribimos:
$ ~/telegram-cli/tg/tg/bin/telegram-cli

Comandos:
contact_list: obtenemos la lista de contactos a los que podemos mandar mensajes

msg <contacto> <mensaje>: envio de mensajes, ejemplo: 
msg Manu_Cogolludo "Hola jsbsan, gracias por el dato"

Nota:
 si el contacto esta formado por dos palabras, hay que sustituir el espacio por guión bajo: "_"


safe_quit: salir de la aplicación (también vale con la teclas Ctrl+C)

add_contact <phone-number> <first-name> <last-name>: añadir un contacto a nuestra lista de contactos

rename_contact <user> <first-name> <last-name>: renombrar un contacto





sábado, 22 de octubre de 2016

[truco] Poner una aplicación que arranque al inicio, a pelo (sin aplicación gráfica)

[truco] 

Poner una aplicación que arranque al inicio, a pelo

(sin aplicación gráfica)


Para hacer que una aplicación se inicie cuando encendamos el equipo, hay varias forma de hacerlo:

1)  Con el interfaz gráfica dos formas de hacerlo, usando la aplicación gráfica "Preferencias de las aplicaciones de inicio


2) A pelo:
Nos vamos a la carpeta .config/autostart de nuestro usuario (en mi caso es /home/mint)


Y alli cremos un nuevo fichero con la extensión .desktop, con el siguiente código:

[Desktop Entry]
Type=Application
Name=<Nombre de la aplicación>
Exec=<comando>
X-GNOME-Autostart-enabled=true
Cambiamos <Nombre de la aplicación> por el nombre de nuestra aplicación y <comando> por el comando que llama a nuestra aplicacion.

En el próximo inicio, arrancará nuestra aplicación en 2º plano.


Fuente y Para más información:
http://unade25.blogspot.com.es/2014/01/trucos-ubuntu-arrancar-aplicaciones-al.html

miércoles, 13 de abril de 2016

Aplicación para la terminal: Lista: crea una lista con las carpetas y subcarpetas y de sus ficheros

Aplicación para la terminal:
 Lista: crea una lista con las carpetas y subcarpetas y de sus ficheros



Con gambas3, también se pueden hacer aplicaciones para la consola (además de las aplicaciones gráficas). Os traigo un simple ejemplo de como crear un "nuevo" comando (una vez instalador el archivo .deb) que estará disponible en nuestra terminal o consola y que nos mostrará  todos los directorios, subdirectorio y nombres de archivos que contengan.







Código fuente e instalador .deb: alojado en google drive



En el siguiente video explico como esta hecho:




domingo, 8 de marzo de 2015

Truco: Saber si tenemos instalado un determinado programa

Truco: Saber si tenemos instalado un determinado programa


Para averiguar si tenemos un programa instalado, tenemos varias opciones:

1) La simple, usando el comando which
$ which nombre_programa

Este comando nos informará de donde esta instalado el programa, y con el parámetro -a, nos dará
todas las ocurrencias que encuentre:
$ which -a nombre_programa


2) Usando dpkg -l|grep, que nos mucha más información, paquetes,versión y que es lo que hace el paquete o la aplilcación.

$ dpkg -l|grep nombre_paquete

Un video para que veais el resultado de usar estos comandos:

Fuente:
http://enavas.blogspot.com.es/2008/03/el-shell-de-linux-comando-which.html

miércoles, 17 de diciembre de 2014

Calcurse: Un calendario y gestor de listas tareas en tu terminal

Calcurse:

Un calendario y gestor de listas tareas en tu terminal

¿te gusta la terminal?¿deseas un programa que te ayude con tus citas, lista de tareas, calendario que consuma pocos recursos? Pues este post te gustará.

Este programa combina un calendario, con un gestor de tareas dependientes, un programador y un sistema de notificación configurable usando una interfaz ncurses. También permite exportar tus calendarios y notas o otros formatos fácilmente imprimibles.

Para instalarlo:
En Debian, Ubuntu, linux mint, minino-picaros, y derivadas:
$ sudo apt-get install calcurse

En fedora
$ yum install calcurse

CentOs / RHEL:
$ yum install gcc ncurses-devel
$ wget http://calcurse.org/files/calcurse-3.2.1.tar.gz
$ tar xvfvz calcurse-3.2.1.tar.gz
$ cd calcurse-3.2.1
$ ./configure
$ make
$ make install

Para lanzar el programa escribir en la terminal:
$ calcurse

Esta es la interfaz con las siguientes secciones:

En la parte inferior tenemos los menus, que se ejecutan pulsando alguna tecla:
(1) Teclas en Citas y Eventos


(2) Teclas en Calendario

(3) Teclas en "Tareas"



Con la tecla "tabulador" nos movemos entre las distintas secciones.
Con la tecla "o", vemos más comandos disponibles en cada sección.

Cómo agregar citas y tareas a realizar:
Para  añadir una nueva cita para hoy y una nueva tarea a realizar con las combinaciones de teclas Ctrl + A y Ctrl + T, respectivamente.
 Si queremos añadir una cita para una fecha que no sea hoy, podemos navegar por el calendario utilizando las teclas Ctrl + L (1 día), Ctrl + H (-1 día), Ctrl + J (1 semana), y Ctrl + K (-1 semana) combinaciones de teclas antes de añadir una cita o tarea a realizar.

Configuración de Notificaciones para Eventos:
Tenemos que pulsar la tecla "C" , y aparace el menu donde podemos configurar y vemos la opción de  Notificaciones ("N"):

Si pulsamos "N", vemos la opciones de los formatos que se admiten para hacer las notificaciones y tendremos que pulsar ctrl+N o ctrl+P para movernos entre las opciones, y "Q" para terminar

Espero que os haya gustado el post.

Saludos


Julio

Fuente Original:
http://xmodulo.com/schedule-appointments-todo-tasks-linux-terminal.html

También te puede interesar:
Como integrar google calendar en el escritorio (http://xmodulo.com/integrate-google-calendar-linux-desktop.html)




jueves, 22 de mayo de 2014

Crear una imagen .ISO de un DVD o CD


Crear una imagen .ISO de un DVD o CD 

Si tenemos un DVD o un CD, y queremos crear su imagen .iso para volver a copiarlo a otro DVD/CD o simplemente tenerlo en nuestro disco duro almacenado, se puede usar nuestra amiga la consola y el comando "dd":

La orden sería así:

dd if=/dev/sr0 of=/home/usuario/copia.iso bs=1M

sr0: indica nuestra unidad de DVD o CD donde tenemos el disco a copiar. El 0 puede variar según el número de dispositivos ópticos que tengamos conectados al ordenador.

/home/usuario/copia.iso: seria la ruta y el nombre donde vamos a guardar la imagen .iso

La única pega que tiene, la orden que he puesto, es que no nos informa de como va el proceso de la copia ni cuanto nos queda.... pero hay una solución... el comando pv (enlace)

Para que nos muestre la información de la cantidad copiada, el tiempo transcurrido, el tiempo restante, y una barra de proceso, escribiremos:

pv /dev/sr0 | dd of=/home/usuario/copia.iso bs=1M


Y si queremos mostrar un cuadro gráfico

(pv -n /dev/sr0 | dd of=/home/usuario/copia.iso bs=1M) 2>&1 | dialog --gauge "Haciendo copia de unidad optica, espere...." 10 70 0

Saludos

Fuentes:
http://manraog.wordpress.com/2013/08/25/mostrar-progreso-del-comando-dd/
http://askubuntu.com/questions/363842/how-to-make-the-dd-command-be-verbose
http://www.cyberciti.biz/faq/linux-unix-dd-command-show-progress-while-coping/

miércoles, 18 de diciembre de 2013

Como contar las lineas de un proyecto



Como contar las lineas de un proyecto

¿te gustaría saber cuantas lineas de código tiene tu proyecto?
Pues ejecutando la siguiente linea de comando en el directorio de tu proyecto lo puedes saber:

$ find . -name '*.class' -o -name '*.module' | xargs wc -l


Lo que estamos haciendo es buscar los archivos *.class y *.module, mostrar las lineas que tienen y al final nos sale un total.


Ejemplo de salida:
Quiero saber cuantas lineas tiene el proyecto "PatronDecorador", ( que esta en la ruta ~/Documentos/PatronDecorador ):

~/Documentos/PatronDecorador$ find . -name '*.class' -o -name '*.module' | xargs wc -l
  29 ./.src/Hielo.class
  15 ./.src/DarkRoast.class
  15 ./.src/Decaf.class
  28 ./.src/Canela.class
  65 ./.src/FMain.class
  15 ./.src/Espresso.class
  10 ./.src/CondimentoDecorador.class
  27 ./.src/Chocolate.class
  15 ./.src/HouseBlend.class
  21 ./.src/Bebida.class
  29 ./.src/Leche.class
  29 ./.src/LecheCondensada.class
 298 total

¿fácil verdad?

 Fuente:
Jussi Lahtinen, de las listas de gambas [Gambas-user]  lists.sourceforge.net