So zeigen Sie das Datum und die Zeit in der Linux-Terminal (und Verwenden Sie Es In der Bash-Skripte)

0
22044
Fatmawati Achmad Zaenuri/Shutterstock.com

Der Befehl “date” ist in die Bash-shell ist die Standard-shell bei den meisten Linux-Distributionen und auch macOS. Dieses tutorial zeigt Ihnen, wie Sie master-date auf der Kommandozeile und wie Sie es verwenden können in shell-Skripten, mehr zu tun, als Sie einfach drucken Sie die Zeit.

Führen Sie den Befehl “date”, um diese Informationen anzuzeigen. Es druckt das aktuelle Datum und die Uhrzeit für Ihre Zeitzone aus:

Datum

Die Formatierung sieht ein wenig doof. Warum nicht das Jahr gedruckt, nachdem Sie den Monat und den Tag, anstatt tagged am Ende, hinter der Zeitzone? Haben Sie keine Angst: Wenn es die Kontrolle über das format der Ausgabe, die Sie wollen, date liefert Sie in Pik. Es gibt mehr als 40 Optionen, die Sie übergeben können, um das Datum zu beauftragen, um die Formatierung seiner Ausgabe genau, wie Sie möchten.

Verwenden Sie die Optionen geben Sie das Datum, ein Leerzeichen, ein plus-Zeichen +, – und die option, einschließlich der führenden Prozentzeichen. Der %c (Daten und Zeit der locale-format) die option bewirkt, dass das Datum und die Uhrzeit gedruckt werden im normalisierten format für Ihr Gebietsschema. Ihr Gebietsschema festgelegt ist, der durch die geografische und kulturelle Informationen, die Sie bereitgestellt, wenn Sie Ihr Betriebssystem installiert. Die Ländereinstellung regelt solche Dinge wie die Währung, symbol, Papier, Größen, Zeitzone und anderen kulturellen Normen.

date +%c

Das Jahr wird nun in eine natürlichere position in der Ausgabe.

Sie können Durchlaufen Sie mehrere Optionen, um das Datum auf einmal. Eine Sequenz von Optionen, genannt ist ein format-string. Der name des Tages (%A), den Tag des Monats (%d) und den Namen des Monats (in%B) verwenden Sie diesen Befehl:

date +%A,%d%B

Das klappte auch, aber es ist hässlich. Kein problem, wir können Leerzeichen enthalten, solange wir wickeln die gesamte format-string in Anführungszeichen ist. Beachten Sie, dass das + geht, die außerhalb der Anführungszeichen.

date +”%A, %d %B”

Sie können text hinzufügen, um den format-string, wie diese:

date +”Heute ist: %A, %d %B”

Bildlauf nach oben und nach unten durch das Datum Mann Seite suchen Sie die gewünschte option schnell lästig wird. Wir haben haderte der Optionen in Gruppen, um Ihnen zu helfen finden Sie Ihren Weg um Sie herum leichter.

Optionen zur Anzeige von Datum und Zeit

  • %c: gibt das Datum und die Uhrzeit in das format für Ihr Gebietsschema, einschließlich der Zeitzone.

Optionen zur Anzeige von Datum

  • %D: gibt das Datum in mm/dd/yy-format.
  • %F: gibt das Datum im yyyy-mm-dd format.
  • %x: Druckt das Datum im format für Ihr Gebietsschema.

Optionen zum Anzeigen des Tages

  • %a: gibt den Namen des Tages, abgekürzt Mo, di, mi, usw.
  • %Ein: Druckt den vollständigen Namen des Tages, Montag, Dienstag, Mittwoch, etc.
  • %u: Druckt die Nummer, der Tag der Woche, wo Montag=1, Dienstag=2, Mittwoch=3, usw..
  • %w: Druckt die Nummer des Tages in der Woche, wobei Sonntag=0, Montag=1, Dienstag=2, usw..
  • %d: gibt den Tag des Monats, mit führender null (01, 02 … 09), falls erforderlich.
  • %e: gibt den Tag des Monats, mit einem führenden Leerzeichen (‘ 1’, ‘2’ … ‘9’) wenn erforderlich. Hinweis: die Apostrophe nicht drucken.
  • %j: gibt den Tag des Jahres mit bis zu zwei führenden Nullen, wenn nötig.

Optionen, um die Anzeige der Woche

  • %U: gibt die Wochennummer des Jahres, wenn man bedenkt Sonntag als ersten Tag der Woche. Zum Beispiel, in der Dritten Woche des Jahres zwanzigsten Woche des Jahres, etc.
  • %V: Druckt die ISO-Wochennummer des Jahres, wenn man bedenkt Montag als ersten Tag der Woche.
  • %W: Woche Anzahl des Jahres, wenn man bedenkt Montag als ersten Tag der Woche.

Optionen, um die Anzeige des Monats

  • %b oder %h: Druckt den Namen der Monat als Abkürzung (Jan, Feb, Mar etc.
  • %B: gibt den vollständigen Namen des Monats, Januar, Februar, März, etc.
  • %m: Druckt die Nummer des Monats, mit führender null, falls erforderlich, 01, 02, 03 … 12.

Optionen, um die Anzeige des Jahres

  • %C: Druckt das Jahrhundert ohne Jahr. Im Jahr 2019 würde es drucken 20.
  • %y: Druckt die Jahr zwei Ziffern. in 2019 es wird gedruckt, 19.
  • %Y: gibt das Jahr als vier Ziffern.

Optionen zur Anzeige der Zeit

  • %T: gibt die Zeit als HH:MM:SS.
  • %R: gibt die Stunde und die Minuten als HH:MM mit keine Sekunden, im 24-Stunden-Uhr.
  • %r: gibt die Zeit nach Ihrem Gebietsschema, mit dem 12-Stunden-Uhr und einem am-oder pm-Anzeige.
  • %X: gibt die Zeit nach Ihrem Gebietsschema mit dem 24-Stunden-Uhr. Angeblich. Beachten Sie, dass während des Tests diese option benahm sich genau so, wie %r macht, wie unten gezeigt. Auf einem Linux-Rechner konfiguriert werden, für die UK-locale eingestellt auf GMT, es druckte die Zeit mit dem 24-Stunden-Format ohne AM oder PM-Anzeige, wie erwartet.

Optionen zur Anzeige der Stunden

  • %H: Druckt die Stunde 00, 01, 02…23.
  • %Ich: Gibt die Stunde mit der 12-Stunden-Format, 00, 01, 02 … 12, mit führender null, falls erforderlich.

Optionen, um die Anzeige Minuten

  • %M: druckt die minute, 01, 02, 03 … 59, mit führender null, falls erforderlich.

Optionen, um die Sekunden Anzuzeigen

  • %s: Druckt die Anzahl der Sekunden seit 1970-01-01 00:00:00, dem Beginn der Unix-Epoche.
  • %S: Druckt die Sekunden, 01, 02, 03 … 59, mit führender null, falls erforderlich.
  • %N: Druckt die Nanosekunden.

Optionen, um die Anzeige der Zeitzone Informationen

  • %z: Druckt den Zeitunterschied zwischen Ihrer Zeitzone und UTC.
  • %:z: Druckt den Zeitunterschied zwischen Ihrer Zeitzone und UTC, mit einem : zwischen den Stunden und Minuten. Hinweis : zwischen dem % – Zeichen und z .
  • %::z: Druckt den Zeitunterschied zwischen Ihrer Zeitzone und UTC, mit einem : zwischen den Stunden, Minuten und Sekunden. Hinweis :: zwischen dem % – Zeichen und z .
  • %Z: Druckt die alphabetische timezone name.

Optionen bezüglich der Formatierung

  • %p: Druckt das AM-oder PM-Anzeige in Großbuchstaben.
  • %P: Druckt das am-oder pm-Anzeige in Kleinbuchstaben. Hinweis: die Marotte mit diesen zwei Optionen. P klein gibt groß-Ausgang, einen Großbuchstaben P gibt Kleinbuchstaben ausgegeben.
  • %t: Druckt eine Registerkarte.
  • %n: Druckt eine neue Zeile.

Optionen zum Ändern weiterer Optionen

Diese Modifikatoren eingefügt werden kann, die zwischen dem % und der option Buchstaben der anderen Optionen zum ändern Ihrer Anzeige. Zum Beispiel, %-S entfernen würde die führende null für einstellige Sekunden Werte.

  • : Ein einzelner Bindestrich verhindert zero-padding auf einstellige Werte.
  • _: ein einzelner Unterstrich fügt führende Leerzeichen bei einstelligen Werten.
  • 0: Bietet führenden Nullen für einstellige Werte.
  • ^: Benutzt Großbuchstaben, wenn möglich (nicht alle Optionen hinsichtlich dieser Modifikator).
  • #: Verwenden Sie die gegenüber der Standard-Fall für die option, wenn möglich (nicht alle Optionen hinsichtlich dieser Modifikator).

Zwei Weitere Nette Tricks

Um die Zeit der letzten Modifikation einer Datei verwenden Sie die Option-r (Referenz) option. Beachten Sie, dass diese verwendet einen – (Bindestrich) anstelle des % – Zeichens, und es erfordert nicht ein + Zeichen. Versuchen Sie diesen Befehl in Ihrem home-Verzeichnis:

date-r .bashrc

Die TZ-Einstellung können Sie ändern die Zeitzone für die Dauer von einem einzigen Befehl.

TZ=GMT date +%c

Mit Datum in Scripts

Aktivieren Sie eine Bash-shell-Skript zu drucken, die Zeit und das Datum ist trivial. Erstellen Sie eine Textdatei mit folgendem Inhalt, und speichern Sie es als gd.sh.

#!/bin/bash

HEUTE=$(date +”Heute ist %A, der %d %B”)
TIMENOW=$(date +”Die lokale Zeit ist “%r”)
TIME_UK=$(TZ=BST Datum +”Die Zeit, in der UK ist %f”)

echo $HEUTE
echo $TIMENOW
echo $TIME_UK

Geben Sie den folgenden Befehl, um die Ausführung Berechtigungen und machen das script ausführbar.

chmod +x gd.sh

Führen Sie das Skript mit diesem Befehl:

./gd.sh

Wir können verwenden Sie den date-Befehl einen timestamp. Das Skript erstellt ein Verzeichnis mit dem timestamp als Namen. Es wird dann kopieren Sie alle text-Dateien aus dem aktuellen Ordner hinein. Durch die Ausführung dieses Skript in regelmäßigen Abständen können wir einen Schnappschuss von unserem text-Dateien. Im Laufe der Zeit erstellen wir eine Reihe von Ordnern mit verschiedenen Versionen von text-Dateien in Ihnen.

Beachten Sie, dass dies nicht eine robuste backup-system, es ist nur für illustrative Zwecke.

Erstellen Sie eine Textdatei mit folgendem Inhalt, und speichern Sie es als snapshot.sh.

#!/bin/bash

# erhalten Sie das Datum und die Uhrzeit
date_stamp=$(date +”%F-%H-%M-%S”)

# erstelle ein Verzeichnis mit diesem Namen
mkdir “$date_stamp”

# kopieren Sie die Dateien aus dem aktuellen Ordner hinein
cp *.txt “$date_stamp”

# alle getan, melden sich zurück und beenden
echo “Text-Dateien kopiert directory: “$date_stamp

Geben Sie den folgenden Befehl, um die Ausführung Berechtigungen und machen das script ausführbar.

chmod +x snapshot.sh

Führen Sie das Skript mit diesem Befehl:

./snapshot.sh

Sie werden sehen, dass ein Verzeichnis erstellt wurde. Sein name ist das Datum und die Uhrzeit, an dem das Skript ausgeführt wurde. In diesem Verzeichnis werden Kopien von text-Dateien.

Gegeben ein wenig des Denkens und der Kreativität, auch die bescheidenen date-Befehl gesetzt werden kann, um den produktiven Einsatz.