GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Betty – Der Siri-ähnliche virtuelle Commandline-Assistent für Linux

Wenn Neulinge mich fragen, wie man gut in der Linux-Befehlszeile ist, habe ich ihnen normalerweise gesagt, dass sie den GUI-Modus so weit wie möglich vermeiden sollen. Ich schlage ihnen vor, zu lernen, wie man Sachen vom Terminal aus macht. Fragen Sie jeden Linux-Experten, und er wird immer sagen:"Der Befehlszeilenmodus ist leistungsfähiger und einfacher". Dieser Aussage stimme ich voll und ganz zu. Falls Sie nicht wissen, wie Sie eine bestimmte Aufgabe über die Befehlszeile ausführen, googeln Sie einfach Ihre Frage und beginnen Sie von dort aus. Die Linux-Befehlszeile ist nicht so schwierig, wie Sie vielleicht denken. Einige Benutzer sind jedoch nicht so sehr daran interessiert, den CLI-Modus zu verwenden, egal wie sehr Sie versuchen, sie zu überzeugen. Sie ziehen es immer vor, nur den GUI-Modus zu verwenden. Wenn Sie einer von ihnen sind, lernen Sie "Betty" kennen , ein virtueller Befehlszeilenassistent für Linux.

Betty ähnelt Apples persönlichem Assistenten Siri oder der Google Voice Search-Funktion. Es ist eine benutzerfreundliche, englischähnliche Oberfläche für Ihre Befehlszeile, die englischähnliche Sätze in Linux-Befehle übersetzt. Sie müssen Ihre Frage nicht googeln oder nicht einmal auf die Manpages verweisen. Stellen Sie einfach Ihre Fragen in einfachen englischen Sätzen und Betty wird sofort tun, was Sie gerade gesagt haben. In diesem kurzen Tutorial zeige ich Ihnen, wie Sie Betty unter Linux installieren und verwenden.

Betty - Der Siri-ähnliche virtuelle Befehlszeilenassistent für Linux

Betty installieren

Installieren Sie zuerst die erforderlichen Voraussetzungen.

Unter Arch Linux und Derivaten:

$ sudo pacman -S git curl ruby

Auf Debian-basierten Systemen:

$ sudo apt-get install git curl ruby

Auf RPM-basierten Systemen:

$ sudo yum install git curl ruby

Unter SUSE, openSUSE:

$ sudo zypper install git curl ruby

Klonen Sie dann das Betty-Repository mit dem folgenden Befehl:

$ git clone https://github.com/pickhardt/betty

Ich habe das Betty-Repository in meinem $HOME-Verzeichnis geklont.

Fügen Sie den Betty-Alias ​​in .bashrc hinzu Datei.

Bearbeiten Sie dazu die .bashrc-Datei:

$ vi ~/.bashrc

Drücken Sie 'i' um in den interaktiven Modus zu wechseln und fügen Sie am Ende folgende Zeile ein:

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

Drücken Sie dann ESC und geben Sie :wq ein um die Datei zu speichern und zu beenden.

Alternativ können Sie den folgenden Einzeiler-Befehl verwenden, um Betty-Alias ​​in die .bashrc-Datei hinzuzufügen.

echo 'alias betty="/home/sk/betty/main.rb"' >> ~/.bashrc

Ersetzen Sie /home/sk/betty/ Weg mit Ihrem eigenen. Da ich das Betty-Repository in mein HOME-Verzeichnis geklont habe, habe ich den obigen Pfad verwendet.

Aktualisieren Sie schließlich die in Ihrer bashrc-Datei vorgenommenen Änderungen mit dem folgenden Befehl:

$ source ~/.bashrc
Empfohlener Download - Kostenloser Spickzettel:"Linux-Befehlszeilen-Spickzettel"

Betty-Nutzung

Die Verwendung von Betty ist trivial. Lassen Sie mich Ihnen einige praktische Beispiele zeigen.

Nehmen wir an, Sie möchten Ihren Benutzernamen finden.

Geben Sie dazu Folgendes ein:

$ whoami

Sie müssen jedoch nicht den eigentlichen Befehl ausführen. Sie müssen sich nicht mehr alle Linux-Befehle merken und merken. Frag einfach die Betty in einfachen englischen Sätzen.

Sagen Sie zum Beispiel, um Ihren Benutzernamen zu erfahren, geben Sie einfach ein:

$ betty whats my username

Beispielausgabe wäre:

Betty: Running whoami
sk

Betty in Aktion

Cool, nicht? Betty ist schlau genug, um Ihre Frage zu verstehen, und sie führt den Befehl "whoami" aus und zeigt das Ergebnis an.

Hier sind weitere Beispiele.

$ betty whats my kernel version
Betty: Running uname -a
Linux ubuntuserver 4.15.0-30-generic #32-Ubuntu SMP Thu Jul 26 17:42:43 UTC 2018 x86_64 x86_64 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

Wenn es mehr als eine Möglichkeit gibt, wie Betty antworten könnte, bittet sie Sie, die gewünschte auszuwählen. Sehen Sie sich das folgende Beispiel an. Ich habe sie nach der IP-Adresse meines Systems gefragt. Sie fragte mich zurück - Interne oder externe IP. Ich wollte, dass sie meine interne IP anzeigt, also habe ich 1 (Nummer eins) eingegeben. Sie führte den Befehl „ifconfig“ aus und zeigte die IP-Adresse an.

$ 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

Wenn Betty Ihre Frage nicht verstehen kann, zeigt sie die folgende Nachricht an:

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

Weitere Beispiele finden Sie auf der Betty GitHub-Projektseite.

Glauben Sie nicht, dass Betty alle komplexen Dinge tun wird, zum Beispiel einen Webserver bereitzustellen. Betty kann solche komplexen Aufgaben nicht alleine erledigen. Sie können Betty verwenden, um einige einfache Befehle auszuführen nur. Wenn Sie weitere Funktionen hinzufügen möchten, senden Sie eine Pull-Anfrage und tragen Sie zum Projekt in GitHub bei (Link befindet sich am Ende dieses Leitfadens).

Obwohl Betty nicht aktiv gewartet wird, ist es dennoch voll funktionsfähig. Wenn Sie zu faul sind, Linux-Befehle zu lernen, könnte Betty eine perfekte Begleiterin für Sie sein.


Linux
  1. Eine Anleitung zum Linux-Terminal für Anfänger

  2. 8 Tipps für die Linux-Kommandozeile

  3. Kontinuierliche Integrationstests für den Linux-Kernel

  4. 5 Gründe, Linux für die Feiertage zu verschenken

  5. 4 Scan-Tools für den Linux-Desktop

3 Passwort-Manager für die Linux-Kommandozeile

Eine Einführung in den Terminalemulator DomTerm für Linux

GalliumOS:Die Linux-Distribution für Chromebooks

Ctop – Ein Befehlszeilen-Überwachungstool für Linux-Container

Pick – Ein Befehlszeilen-Fuzzy-Suchtool für Linux

Die 5 besten Horrorspiele für Linux, um die virtuelle Welt des Terrors zu genießen