Betty-The-Siri-like-Commandline-Virtual-Assistant-1

A menudo recibo correos electrónicos de los usuarios de cómo convertirse en maestros en la línea de comandos de Linux. Mi respuesta es, y siempre será, dejar de usar el modo GUI. Aprende a hacer cosas de Terminal. Pregunta a cualquier experto de Linux, y siempre dirán – “Modo de línea de comandos es más potente y fácil”. Estoy totalmente de acuerdo con esta declaración. En el caso, de que no sabes hacer una tarea específica de la línea de comando, mete en google tu pregunta y comienza allí. La línea de comandos de Linux no es tan difícil como piensas. Sin embargo, algunos usuarios no están tan interesados ​​en usar el modo CLI, no importa lo difícil que intentes persuadirlos. Siempre prefieren usar el modo GUI solamente. Si eres uno de ellos, conoce a Betty, un asistente virtual de línea de comandos para Linux.

Betty es algo similar al asistente personal Siri de Apple o la función de búsqueda de voz de Google. Es una interfaz amigable para tu línea de comandos que traduce frases de tipo inglés a comandos de Linux. No necesita google para tu pregunta o ni siquiera necesitas referirse a las páginas de manual. Simplemente haz sus preguntas en frases sencillas en inglés, y Betty hará lo que acabas de decir. En este breve tutorial, le mostraré cómo instalar y usar Betty en Linux.

Instalar Betty

Primero, instala los requisitos previos necesarios.

En Arch Linux y derivados:

sudo pacman -S git curl ruby

En Debian y derivados:

sudo apt-get install git curl ruby

En RPM:

sudo yum install git curl ruby

En SUSE, openSUSE:

sudo zypper install git curl ruby

A continuación, clona el repositorio Betty utilizando el siguiente comando:

git clone https://github.com/pickhardt/betty
vi ~/.bashrc

Agrega la siguiente línea al final:

alias betty="/home/sk/betty/main.rb"

Reemplaza /home/sk/betty/ con el suyo propio. Desde que he clonado el repositorio betty en mi directorio HOME, he añadido la ruta anterior.

Por último, actualiza los cambios realizados en su archivo bashrc mediante el siguiente comando:

source ~/.bashrc

El uso de Betty es trivial. Permíteme mostrarle algunos ejemplos prácticos.

Digamos, quieres encontrar su nombre de usuario.

Para ello, escribe:

whoami

Sin embargo, no es necesario ejecutar el comando real. No tienes que memorizar y recordar todos los comandos de Linux. Simplemente pregunta a Betty en frases sencillas en inglés.

Digamos, por ejemplo, para conocer tu nombre de usuario, simplemente escribe:

betty whats my username

El resultado de la muestra sería:

Betty: Running whoami
sk

betty

Cool, ¿no? Betty es lo suficientemente inteligente como para entender tu pregunta y ejecutará el comando “whoami” y mostrará el resultado.

Aquí hay más ejemplos.

$ betty whats my kernel version
Betty: Running uname -a
Linux sk 4.11.9-1-ARCH #1 SMP PREEMPT Wed Jul 5 18:23:08 CEST 2017 x86_64 GNU/Linux
$ betty what time is it
Betty: Running date +"%r (%T)"
06:59:17 PM (18:59:17)
$ betty what month is it
Betty: Running date +%B
August

Si hay más de una forma en que Betty podría responder, ella te pedirá que selecciones la que deseas. Echa un vistazo al siguiente ejemplo. Le he pedido la dirección IP de mi sistema. Me preguntó de nuevo – Ip interna o IP externa. Quería que mostrara mi IP interna, así que entré 1 (número uno). Ejecutó el comando “ifconfig” y mostró la dirección IP.

$ betty whats my ip address
Betty: Okay, I have multiple ways to respond.
Betty: Enter the number of the command you want me to run, or N (no) if you don't want me to run any.
[1] ifconfig
 Gets your internal ip address.
[2] curl -sL http://pannous.net/ip.php
 Gets your external ip address.
1
Betty: Running ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
 inet 127.0.0.1 netmask 255.0.0.0
 inet6 ::1 prefixlen 128 scopeid 0x10<host>
 loop txqueuelen 1000 (Local Loopback)
 RX packets 0 bytes 0 (0.0 B)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 0 bytes 0 (0.0 B)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

wlp9s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
 inet 192.168.43.192 netmask 255.255.255.0 broadcast 192.168.43.255
 inet6 fe80::c218:85ff:fe50:474f prefixlen 64 scopeid 0x20<link>
 ether a0:38:73:10:99:5h txqueuelen 1000 (Ethernet)
 RX packets 102938 bytes 101205525 (96.5 MiB)
 RX errors 0 dropped 0 overruns 0 frame 0
 TX packets 75264 bytes 12390762 (11.8 MiB)
 TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

Si Betty no puede entender tu pregunta, mostrará el siguiente mensaje:

Betty: I don't understand. Hopefully someone will make a pull request so that one day I will understand.

 

Fuente: ostechnix | maslinux

¿Quién está en línea?

Hay 1850 invitados y ningún miembro en línea