Ich versuche, printf zu verwenden, um einige hübsche Ausgaben in einem Bash-Skript zu formatieren
z.B:
-----------------------
| This is some output |
-----------------------
Aber ich bin über ein Verhalten gestolpert, das ich nicht verstehe.
$ printf "--" gibt mir den fehler printf: usage: printf [-v var] format [arguments]
und
$ printf "-stuff"führt zu-bash: printf: -s: invalid option
Anscheinend glaubt printf, ich würde versuchen, ein paar Argumente zu übergeben, ohne dass ich es tue.
Inzwischen habe ich ganz zufällig diese Problemumgehung gefunden:
$ printf -- "--- this works now ----\n"gibt mir--- this works now ----
Kann jemand dieses Verhalten erklären?
echodenen dies fehlschlagen würde echo ------------? Die meisten unterstützen nur -n(keine abschließenden Zeilenumbrüche), -e(interpretieren Zeichen mit umgekehrten Schrägstrichen) und sind möglich -E(interpretieren Sie sie NICHT). (BEARBEITEN: GNU /bin/echounterstützt auch --helpund --version.)