mal gucken,
/bin/echo --help
Aufruf: /bin/echo [OPTION]... [ZEICHENKETTE]...
Die ZEICHENKETTEn auf die Standardausgabe ausgeben.
-n den abschließenden Zeilenvorschub unterdrücken
-e enable interpretation of backslash escapes
-E disable interpretation of backslash escapes (default)
--help diese Hilfe anzeigen und beenden
--version Versionsinformation anzeigen und beenden
Wenn -e aktiv ist, werden die folgenden Sequenzen erkannt und umgesetzt:
\0NNN Zeichen mit dem ASCII‐Code NNN (oktal)
\\ Rückschrägstrich
\a Alarm (BEL)
\b Zeichen rückwärts löschen (Backspace)
\c Zeilenvorschub am Ende unterdrücken
\f Seitenvorschub
\n Zeilenvorschub
\r Wagenrücklauf (Carriage Return)
\t horizontaler Tabulatorstopp
\v vertikaler Tabulatorstopp
man 1 bash
SHELL BUILTIN COMMANDS
echo [-neE] [arg ...]
Output the args, separated by spaces, followed by a newline. The return sta-
tus is always 0. If -n is specified, the trailing newline is suppressed. If
the -e option is given, interpretation of the following backslash-escaped
characters is enabled. The -E option disables the interpretation of these
escape characters, even on systems where they are interpreted by default.
The xpg_echo shell option may be used to dynamically determine whether or not
echo expands these escape characters by default. echo does not interpret --
to mean the end of options. echo interprets the following escape sequences:
\a alert (bell)
\b backspace
\c suppress trailing newline
\e an escape character
\f form feed
\n new line
\r carriage return
\t horizontal tab
\v vertical tab
\\ backslash
\0nnn the eight-bit character whose value is the octal value nnn (zero to
three octal digits)
\nnn the eight-bit character whose value is the octal value nnn (one to
three octal digits)
Ich würd mal sagen, das Builtin ist mindestens gleichwertig und wahrscheinlich schneller. Wenn man allerdings unbedingt /bin/echo haben will, kann man entweder eben mit vollständigem Pfad /bin/echo aufrufen, oder via
alias echo='/bin/echo'
in der ~/.bashrc oder eben in einem Script explizit angeben und so das Ganze regeln. In einem Script würde ich dann aber zum Schluss auch wieder unaliassen. Wobei sich der Sinn mir da nicht erschließt, ausser, man weiß nicht genau in welcher Shell das Script ausgeführt wird (das echo-Builtin der csh kann z.B. keine Escape-Sequenzen), aber dann hat man sowieso andere kompatibilitäts-Kalamitäten beim Schreiben des Scriptes...