Hallo, Gast |
Du musst dich registrieren bevor du auf unserer Seite Beiträge schreiben kannst.
|
Foren-Statistiken |
» Mitglieder: 1
» Neuestes Mitglied: Joopi
» Foren-Themen: 492
» Foren-Beiträge: 673
Komplettstatistiken
|
Benutzer Online |
Momentan sind 9 Benutzer online » 0 Mitglieder » 5 Gäste AhrefsBot, Bytespider, Google, bot
|
|
|
neue Datenbank anlegen / öffnen |
Geschrieben von: Joopi - 06-01-2023, 10:22 - Forum: Programmieren
- Keine Antworten
|
|
Um eine neue Datenbank anzulegen, ist folgendes auf der Konsole einzugeben:
Code: sqlite3 datenbank.db
Sollte die Datenbank (Datei) bereits existieren, wird sie geöffnet.
|
|
|
Feldnamen anzeigen |
Geschrieben von: Joopi - 06-01-2023, 10:20 - Forum: Programmieren
- Keine Antworten
|
|
Um in der Konsole bei einem SELECT-Statement die Feldnamen als Überschriften zu sehen, ist vorher folgendes einzugeben:
Damit werden die Feldnamen angezeigt. Mit *off* wird die Anzeige wieder ausgeschaltet.
|
|
|
chmod - Dateiberechtigung feststellen |
Geschrieben von: Joopi - 06-01-2023, 10:14 - Forum: Programmieren
- Keine Antworten
|
|
Es macht schonmal Sinn herauszufinden, welche Dateiberechtigungen vorliegen. Mit dem LS-Befehl lassen sich die momentanen Berechigungen anzeigen:
Code: user@rechner:/temp# ls -l playliste.txt -rw-r–r– 1 user user 217 Mai 16 23:31 playliste.txt
Diese Lesart ist etwas problematisch und (immer noch) nicht in meinem tagtäglichen Fokus. Um ggfs. andere Berechtigungen zu vergeben, macht es Sinn die Zahlen-Werte zu nutzen (644 oder 755 oder 777 oder oder).
Mit dem folgenden Befehl lässt sich dieser Zahlenwert feststellen:
Code: stat -c %a playliste.txt
Das Ergebnis ist:
Zitat:644
|
|
|
date - die Ausgabe des Datums |
Geschrieben von: Joopi - 06-01-2023, 10:13 - Forum: Programmieren
- Keine Antworten
|
|
Da ich nicht jeden Tag wie ein Administrator auf der Konsole alle möglichen Dinge zu erledigen habe, entfallen mir mit der Zeit sehr viele gute und nützliche Befehle. Heute habe ich nach einer Möglichkeit gesucht, um ein Datum incl. Uhrzeit in einer für mich passenden Form darstellen zu können. Als ich dann die Lösung hatte, war es wieder einfach.
Auf der Konsole kann man ein Datum in der Syntax **yyyy-mm-dd hh:mms** wie folgt erzeugen und ausgeben (das aktuelle Datum ist hier gemeint).
Code: echo $(date '+%Y-%m-%d %H:%M:%S')
Die Ausgabe ist dann wie folgt gewesen.
Zitat:2022-02-12 17:34:46
Das ist die Schreibweise, mit der ein einer MySQL-Datenbank die Datumsangaben mit *datetime* und *current_timestamp* eingetragen werden. Damit musste ich umgehen und mir in einem Script das Datum in der gleichen Weise erstellen, um es vergleichbar zu machen.
Es hat hervorragend funktioniert.
|
|
|
Debian - installierte Pakete ermitteln |
Geschrieben von: Joopi - 06-01-2023, 10:12 - Forum: Programmieren
- Keine Antworten
|
|
Auf meinem Desktop-PC habe ich jede Menge Programme installiert, die teilweise nicht im Repository liegen, sondern von mir manuell durch deb-Pakete installiert wurden.
Zu wissen, welche Pakete installiert sind, ist immer dann hilfreich, wenn man vielleicht einen neuen Rechner bekommt oder eine neue Linux-Distribution installieren will, um eben diese Programme nachinstallieren zu können.
Es gibt verschiedene Möglichkeiten, um festzustellen, welche Programme installiert sind.
Eine Pakteliste lässt sich wie folgt aufrufen:
Code: dpkg -l > installierte_programme_20200511.txt
Aus dieser Datei lässt sich leider nicht so ohne weiteres entnehmen, welches Programm ich manuell installiert hatte, weil es im Standard nicht enthalten ist.
Eine ganz gute Möglichkeit bietet der folgende Befehl:
Hier scheinen dann tatsächlich die mir bekannten und nachinstallierten Programme angezeigt zuu werden. Allerdings werden auch die wegen der Abhängigkeiten mitinstallierten Programme und Dateien aufgelistet. Das ist aber besser als nichts.
Möchte man nach einer Neuinstallation die gleiche Konfiguration haben wie vorher, so kann man sich mit folgendem Befehl eine Paketliste erstellen lassen:
Code: dpkg --get-selections
…die dann mit folgendem Befehl im neuen System wiederhergestellt werden kann:
Code: dpkg --set-selections
Dieser Befehl ist natürlich mit Vorsicht zu genießen.
Alle Listen müssen, um sie dauerhaft zu haben, in eine Datei umgeleitet werden.
In einer virtuellen Maschine lässt sich das Umgehen mit den Befehlen durchaus testen. Interessant wird es dann, wenn die Linuxversionen nicht mehr übereinstimmen. Debian 10 als Quelle, Debian 11 als Ziel. Problematisch wird es dann, wenn Pakete nicht mehr im Ziel enthalten sind. Eigentlich sollte *dpkg* diese Umstand abfangen und mit einer Fehlermeldung dokumentieren. Ein Absturz oder ähnliches sollte nicht passieren.
|
|
|
mail - auf der Konsole intern versenden |
Geschrieben von: Joopi - 06-01-2023, 10:09 - Forum: Programmieren
- Keine Antworten
|
|
Auf der Konsole lässt sich eine Mail versehen, z.B. für einen internen Nutzern. Der Befehl sieht wie folgt aus:
Code: echo "Das ist der Mailtext" | mail -s 'Betreff' user@localhost
Das macht im Grunde genommen kaum Sinn, aber diesen Befehl kann man auch in einem Script einsetzen, welches z.B. Daten, die während der Scriptausführung erzeugt werden, an einen User gesendet werden. Es kann auch eine einfache Erledigungsmail sein. Oder sonst was.
Es ist auch möglich, die Mailbestandteile in eine Datei zu setzen, die dann entsprechend ausgewertet wird.
|
|
|
find - Dateien aus Unterordner kopieren |
Geschrieben von: Joopi - 06-01-2023, 10:07 - Forum: Programmieren
- Keine Antworten
|
|
Oftmals habe ich das Problem, dass einzelne oder mehrere Dateien über eine größere Anzahl von Unterordnern verteilt sind. Um diese manuell in einem Ordner zusammenzuführen, ist sehr viel Zeit aufzuwenden.
Es gibt aber einen geniale Befehl auf der Konsole, der alle Dateien aus den Unterordnern (auch Unterunterordnern) in einen benannten Ordner kopiert oder verschiebt.
So wie der Befehl unten aufgeführt ist, ist er in dem Ordner auszuführen, in dem auch der Beispielordner z_temp liegt. Sofern der Befehl in Scriptform ausgeführt werden soll, muss natürlich die Zielordnerangabe entsprechend angepasst und vorgenommen werden.
Der Befehl kann zum Kopieren und zum Verschieben eingesetzt werden.
kopieren:
Code: find . -type f -print0 | xargs -0 -I%%% cp %%% z_temp
veschieben:
Code: find . -type f -print0 | xargs -0 -I%%% mv %%% z_temp
Mir hat der Befehl sehr viel Zeit erspart, weil ich ganz früher sehr viel mit Ordnern gearbeitet habe. Allerdings muss man bedenken, dass Dateien, die den gleichen haben haben, einfach der letzten Datei überschrieben werden. Das könnte zu Datenverlust führen. Also vorher kontrollieren, ob es gleichnamige Dateien gibt, die aber unterschiedlichen Inhalte haben, oder in einem Shellscript eine Fehlerbehandlung einbauen.
|
|
|
Responsive Layout DuendeV3 aktiv |
Geschrieben von: Joopi - 08-11-2022, 10:18 - Forum: Allgemeines
- Keine Antworten
|
|
Für das MyBB-Forum gibt es nicht allzu viele Layout, die responsive sind.
Gefunden habe ich das Theme namens Duende v3 (Responsive), um dieses Dilemma auszumerzen. Das Dilemma besteht hauptsächlich darin, dass Suchmaschinen mobile first oben auf der Agenda stehen haben. Und ordinäre Foren sind meist von Haus aus noch nicht responsive gelayoutet.
Das Theme ist nicht wirklich das schönste, aber für mich zunächst ok. Wer nostalgisch unterwegs ist, der kann auch unten auf der Seite das Layout auf default umstellen.
Zu beachten hatte ich, da ich im Geltungsraum der blöden DVGSO bin, dass keine Persönlichkeitsrechte missachtet werden, weil die IP-Adresse eines Users über den großen Teich gesendet wird.
Um dem zu begegnen habe ich die beiden betroffenen Dateien lokal abgespeichert und in den Theme-Einstellungen entsprechend ersetzt:
Code: <!-- Am 08.11.2022 habe ich die Schriftartendateien manuell eingebunden -->
<link type="text/css" rel="stylesheet" href="images/duende_v3/font-awesome.min.css">
<link type="text/css" rel="stylesheet" href="images/duende_v3/animate.min.css">
<!--
<link rel="preconnect" href="https://cdnjs.cloudflare.com">
<link type="text/css" rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
<link type="text/css" rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/animate.css/3.7.2/animate.min.css">
-->
Der Pfad dahin ist:
- Home » Template-Sets » Duende v3 Templates
- dann letzten Punkt Templates ohne Gruppen aufklappen
- dann headerincludes bearbeiten
Damit müsste ich den Anforderungen der DSGVO und des Telekommunikationsgesetzt mit Impress und Datenschutzerklärung genügen.
|
|
|
|