Ich bin neu im Terminal und versuche zu lernen, wie man es benutzt.
Was machen diese Zeilen? Und wie arbeiten sie?
echo -n "Today's date is: "
date +"%A, %B %-d, %Y"
Ich bin neu im Terminal und versuche zu lernen, wie man es benutzt.
Was machen diese Zeilen? Und wie arbeiten sie?
echo -n "Today's date is: "
date +"%A, %B %-d, %Y"
Antworten:
$ type echo
echo is a shell builtin
Das heißt, der echo
Befehl ist Teil des bash
Programms selbst (vorausgesetzt, Sie verwenden bash)
-n
ist eine Option, also mal sehen, was es tut
$ help echo
Write arguments to the standard output
...
-n do not append a newline
Also, wenn wir die Linie laufen:
zanna@monster:~$ echo -n "Today's date is: "
Today's date is: zanna@monster:~$
Hmm, das sieht nicht sehr gut aus, weil es nach dem gedruckten Text keinen Zeilenumbruch gibt. Wir werden darauf zurückkommen.
$ type date
date is /bin/date
ach so der date
befehl ist ein separates programm. Was tut es?
$ man date
Display the current time in the given FORMAT, or set the system date.
Die Zeichen nach dem date
Befehl sind Formatoptionen (die vorangestellt werden müssen +
) - es werden verschiedene Teile des Datums angegeben (z. B. %A
der vollständige Name des Wochentags - man date
die vollständige Liste der Optionen finden Sie im Rest des Befehls).
$ date +"%A, %B %-d, %Y"
Tuesday, February 7, 2017
Wenn wir also die Befehle in einem Skript zusammenfassen und dann das Skript ausführen, erhalten wir
Today's date is: Tuesday, February 7, 2017
Nett! Wenn Sie den gleichen Effekt in einem Terminal erzielen möchten, können Sie die beiden Befehle durch ein Semikolon anstelle einer neuen Zeile trennen:
$ echo -n "Today's date is: " ; date +"%A, %B %-d, %Y"
Today's date is: Tuesday, February 7, 2017
Sie sollten mit Manualpages den Befehl starten man
. Geben Sie einfach ein man <command>
, um Informationen über a zu erhalten <command>
. Das Navigieren man
ist nicht sehr intuitiv, es gibt jedoch zahlreiche Anleitungen, z. B. https://wiki.gentoo.org/wiki/Man_page/Navigate#Navigating_and_searching_man_pages .
Relevante Teile von man echo
und man date
:
echo [SHORT-OPTION]... [STRING]...
Echo the STRING(s) to standard output.
-n do not output the trailing newline
Daher wird die Zeichenfolge gedruckt und danach nicht in die neue Zeile gewechselt (dies ist das Standardverhalten). Die Ausgabe des nächsten Befehls wird daher auf der rechten Seite der wiedergegebenen Zeichenfolge gedruckt.
date [OPTION]... [+FORMAT]
FORMAT controls the output. Interpreted sequences are:
%A locale's full weekday name (e.g., Sunday)
%B locale's full month name (e.g., January)
%d day of month (e.g., 01)
%Y year
By default, date pads numeric fields with zeroes. The following optional flags may follow '%':
- (hyphen) do not pad the field
Ich hoffe es ist klar. Fühlen Sie sich frei zu fragen, wenn nicht.
date
tut anzeigen Datum im Terminal (Befehlszeilenschnittstelle). Wenn Sie etwas mehr wollen (wie es Zanna vorschlägt), stellen Sie bitte eine neue Frage.
echo -n "Today's date is: "
Es wird gedruckt: Das heutige Datum ist:
date +"%A, %B %-d, %Y"
Es wird ungefähr so gedruckt: Dienstag, 7. Februar 2017
Hinweis :
Verwenden Sie man
oder --help
Befehl, um mehr über andere Befehle zu erfahren.
z.B :
man echo
echo --help
Probieren Sie diese Herausforderungen aus. Herausforderungen sind wirklich gut, um Ihnen dabei zu helfen, Dinge am Terminal zu erledigen.
$ man date && man echo
an der Muschel.