Konsole, Terminal, WordPress und mehr

Es gibt heutzutage zwei gebräuchliche und eine „sich entwickelnde“ Methode mit einem Computer zu interagieren. Die ältere der gebräuchlichen Methoden ist textbasiert und erfolgt über die „Konsole“, die jüngere ist grafisch und erfolgt über ein Fenstersystem mit Mauszeiger oder Touch-Oberfläche. Eine dritte Methode, die in der Zukunft eine grössere Rolle spielen wird, ist die Spracherkennung. Die Methoden bauen prinzipiell aufeinander auf. Der Klick auf einen Button in einer grafischen Oberfläche löst einen Befehl oder ein Programm aus, das man man auch ohne diese Oberfläche auf einer Konsole hätte eingeben können. Bei der Spracherkennung ist das genauso. Anstelle komfortabler Spracherkennungen und grafischer Oberflächen kannst du für viele Aktionen aber auch die Textkonsole benutzen.

Grafische Oberflächen und Spracherkennung sind intuitiver zu bedienen, die textbasierte Konsole ist dagegen abstrakter. Du musst schon genau wissen, was du tun willst und vor allem, wie du es tun kannst, um mit der Konsole erfolgreich zu sein. Da die textbasierte Konsole nach wie vor die Ausgangsbasis vieler Interaktionen mit dem Computer darstellt, funktioniert sie, im Gegensatz zu einer grafischen Oberfläche oder der Spracherkennung prinzipiell „immer“.

Als vor mehr als 30 Jahren grafische Benutzeroberflächen eingeführt wurden, ermöglichte das auch in klassischen kreativen Bereichen mit dem Computer zu arbeiten. Ich denke da an Musik, Kunst und alles was mit dem Bedrucken von Papier zu tun hat. Der Siegeszug des Smartphones hat die grafische Touch-Oberfläche als Standard eingeführt. Auf einem Smartphone gibt es „normalerweise“ keine Konsole mehr.

Wenn du die richtigen Befehle kennst, kannst du sehr effektiv und strukturiert arbeiten. Effektives und strukturiertes Arbeiten ist immer auch eine gute Basis um Abläufe zu automatisieren und daher werden Konsolenbefehle gern zu „Konfigurationsbündeln“ zusammengefasst. Diese Konfigurationen werden in Textdateien gespeichert. Die Textdateien können in Versionskontrollsystemen verwaltet werden und ermöglichen reproduzierbare Konfigurationseinstellungen. Das funktioniert beispielsweise auch gut bei der Bearbeitung von Bildern (siehe ImageMagick).

Automatisierung

Nun gibt es zwei grosse Konstanten in den letzten Jahrzehnten. Die eine geht in Richtung einfache Bedienung (Grafische Oberflächen, Touch-Screens, Spracherkennung, künstliche Intelligenz) und die andere in Richtung kompromisslose Automatisierung. Bei der Automatisierung wird die textbasierte Konsole wieder wichtig. Ich habe bewusst kompromisslose Automatisierung geschrieben, denn auf den meisten Smartphones gibt es keine Möglichkeit mehr, über die Konsole „Dinge zu tun“. Es ist theoretisch möglich (bei Android), aber aus Sicherheits- und Kontrollgründen nicht erwünscht. Bei Spracherkennungssystemen wie Alexa, Ok Google, Siri und all den anderen gibt es weder eine grafische Oberfläche, noch eine Konsole.

Nun stellt sich allerdings die Frage, wie so eine grafische Benutzeroberfläche auf einem Telefon oder die Reaktionen eines Spracherkennungssystem programmiert, konfiguriert und gewartet werden. Und „zack“, ist man schnell wieder bei einer Konsole auf einem Bildschirm.

Auch bei einem Webhosting kann eine Konsole nützlich sein. Bei WordPress bietet das WP-CLI Projekt (WordPress Command Linie Interface) viele Möglichkeiten an.

Nutzung der Konsole bei Novatrend

Wenn du ein Webhosting bei uns nutzt, kannst du auf deine Daten per Konsole zugreifen. In Linux und MacOS heisst die Konsole Terminal und ist im Betriebssystem enthalten. Für Windows benötigte man früher das Zusatzprogramm PuTTY, seit Windows 10 geht es auch mit Windows-Bordmitteln über die Secure Shell (siehe auch SSH unter Windows). Auch für Android und iOS gibt es Terminal Apps.

Die Zugangsdaten sind deine FTP Daten.

ssh [Benutzername]@[FTP-Hostname] 

Nach der Abfrage des Passworts landest du in deinem Root Verzeichnis.

WP-CLI einrichten

So prinzipiell musst du WP-CLI nur herunterladen und dann kannst du es nutzen … aber:

  1. Wie lädt man auf der Konsole eine Datei herunter?
    Es gibt einen Befehl namens curl, damit kannst du Dateien herunterladen
  2. Wo lädt man sie hin?
    Das kommt darauf an, was du tun willst. In diesem Fall ist es sinnvoll die Datei in das Verzeichnis /bin zu laden.
  3. Wie ruft man die Datei auf?
    Wenn eine Datei ausführbar ist, kannst du sie einfach mit dem Namen aufrufen

Zurück zu WP-CLI. Wenn du mit deinem Server verbunden bist, siehst du die Eingabeaufforderung oder den Prompt, in meinem Fall sieht das so aus:

[cocoate1@srv125 ~]$ 

Hinter dem Dollarzeichen kannst du Befehle eintippen. Der Befehl ls -l zeigt dir die Verzeichnisse und die Dateien an, so wie bei mir hier:

[cocoate1@srv125 ~]$ ls -l
 total 180
...
hagen.cocoate.com
 drwxr-x---  7 cocoate1 nobody    4096 Jun  2 11:08 lscache
 drwxr-x--x 11 cocoate1 cocoate1  4096 Jun  3 14:05 mail
public_ftp
 drwxr-x---  4 cocoate1 nobody    4096 Sep 22  2018 public_html
 drwx--x--x  3 cocoate1 cocoate1  4096 Apr  5 20:20 softaculous_backups
...

Ausführbare Programme legt man normalerweise in ein Verzeichnis mit dem Namen /bin. Wenn du kein /bin Verzeichnis hast, lege es dir einfach mit dem Befehl mkdir (make directory) an. Mit dem Befehl cd (change directory) kannst du in das /bin Verzeichnis wechseln. Das Verzeichnis, in dem du dich befindest, wird vor dem Prompt angezeigt.

[cocoate1@srv125 ~]$ mkdir bin 
[cocoate1@srv125 ~]$ cd bin
[cocoate1@srv125 bin]$ 

Jetzt musst du WP-CLI herunterladen. Das geht mit dem Befehl curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar.

[cocoate1@srv125 bin]$ curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar
   % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                  Dload  Upload   Total   Spent    Left  Speed
 100 5377k  100 5377k    0     0  5266k      0  0:00:01  0:00:01 --:--:-- 5272k

Jetzt solltest du mit dem Befehl ls -l so etwas sehen, die Datei sollte im /bin Verzeichnis angekommen sein und heisst wp-cli.phar.

[cocoate1@srv125 bin]$ ls -l
 total 5380
 -rwxrw-r-- 1 cocoate1 cocoate1 5506663 Jun  3 19:47 wp-cli.phar

Um die Datei leichter ausführen zu können solltest du sie in wp umbenennen. Das geht mit dem Befehl mv.

[cocoate1@srv125 bin]$ mv wp-cli.phar wp

Nun muss die Datei noch „ausführbar“ sein. Dafür muss ein Merkmal gesetzt werden mit dem Befehl chmod.

[cocoate1@srv125 bin]$ chmod u+x wp

Jetzt kannst du mit dem Befehl wp –info testen ob alles funktioniert . Die Ausgabe sieht in etwa so aus (wenn es funktioniert):

[cocoate1@srv125 bin]$ wp --info
 OS: Linux  SMP Thu Nov 22 09:42:49 EST 2018 x86_64
 Shell: /bin/bash
 PHP binary: /opt/alt/php71/usr/bin/php
 PHP version: 7.1.29
 php.ini used: /opt/alt/php71/etc/php.ini
 WP-CLI root dir: phar://wp-cli.phar/vendor/wp-cli/wp-cli
 WP-CLI vendor dir: phar://wp-cli.phar/vendor
 WP_CLI phar path: /home/cocoate1/bin
 WP-CLI packages dir: 
 WP-CLI global config: 
 WP-CLI project config: 
 WP-CLI version: 2.2.0

Wenn du nun ein existierendes WordPress hast, kannst du in das entsprechende Verzeichnis wechseln und mit WP-CLI darin arbeiten.

Mit dem Befehl wp plugin list kannst du dir beispielsweise eine Liste deiner installierten Plugins ausgeben.

[cocoate1@srv125 hagen.cocoate.com]$ wp plugin list
+----------------------+---------+-----------+-------+
| name                 | status  | update    |version|
+----------------------+---------+-----------+-------+
| activitypub          | active  | none      | 0.7.2 |
| anual-archive        | active  | none      | 1.5.3 |
| antispam-bee         | active  | none      | 2.9.1 |
| flickr-justified-gall| active  | none.     | 3.5   |
| iframe               | active  | none      | 4.4   |
| litespeed-cache      | active  | none      | 2.9.8 |
| autopost-to-mastodon | active  | available | 3.3.2 |
+----------------------+---------+-----------+-------+

Für das letzte Plugin ist ein Update verfügbar. Mit dem Befehl wp plugin update autopost-to-mastodon kann ich das Plugin aktualisieren.

[cocoate1@srv125 hagen.cocoate.com]$ wp plugin update autopost-to-mastodon
 Enabling Maintenance mode...
 Downloading update from https://downloads.wordpress.org/plugin/autopost-to-mastodon.3.3.4.zip...
 Unpacking the update...
 Installing the latest version...
 Removing the old version of the plugin...
 Plugin updated successfully.
 Disabling Maintenance mode...
 Success: Updated 1 of 1 plugins.
+------------------+-------------+-------------+-------+ | name             | old_version | new_version | status|
+------------------+-------------+-------------+-------+  | autopost-to-ma...| 3.3.2       | 3.3.4       |Updated|
+------------------+-------------+-------------+-------+ 

Das ist doch schick, oder 🙂
Eine ausführliche Dokumentation findest du auf der Website des WP-CLI Projekts.

Fazit

Die Arbeit in der Konsole ist auf den ersten Blick ein wenig verwirrend. Wenn man aber regelmässig damit arbeitet, wird man die „Klarheit“ zu schätzen wissen

Link


tl;dr: Schau doch mal in deine Konsole

Autor: hagengraf

consultant, author, trainer, solution finder, web architect, developer, open source lover, visionary, orator, the good old webmaster. Able to simplify!

Kommentar verfassen