Übersetzung von "man echo"

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
Benutzeravatar
Twilo
Beiträge: 255
Registriert: 21.04.2006 00:59:40
Wohnort: Berlin

Übersetzung von "man echo"

Beitrag von Twilo » 14.01.2010 23:40:32

Hallo,

ich kann mich zwar täuschen, aber ist die deutsche Übersetzung nicht etwas falsch?

Code: Alles auswählen

If -e is in effect, the following sequences are recognized:
Ohne -E werden die folgenden Sequenzen erkannt und berechnet:
mfg
Twilo

Benutzeravatar
Meillo
Moderator
Beiträge: 9281
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Übersetzung von "man echo"

Beitrag von Meillo » 14.01.2010 23:44:54

Bei mir sieht das so aus:
-e enable interpretation of backslash escapes
-E disable interpretation of backslash escapes (default)
Es gibt also -e *und* -E. Anscheinend ist die eine Zeile nicht übersetzt worden.
Use ed once in a while!

Benutzeravatar
Twilo
Beiträge: 255
Registriert: 21.04.2006 00:59:40
Wohnort: Berlin

Re: Übersetzung von "man echo"

Beitrag von Twilo » 15.01.2010 00:07:06

Hallo,

ich meine den Text unterhalb von --version

Code: Alles auswählen

       If -e is in effect, the following sequences are recognized:
       \0NNN  the character whose ASCII code is NNN (octal)
       \\     backslash
       \a     alert (BEL)
       \b     backspace
       \c     produce no further output
       \f     form feed
       \n     new line
       \r     carriage return
       \t     horizontal tab
       \v     vertical tab

Code: Alles auswählen

       Ohne -E werden die folgenden Sequenzen erkannt und berechnet:
       \NNN   Zeichen mit dem ASCII Code (oktal)
       \\     Rückschrägstrich
       \a     Alarm (BEL)
       \b     Zeichen zurück
       \c     unterdrücke Zeilenvorschub am Ende
       \f     Seitenvorschub
       \n     Zeilenvorschub
       \r     Wagenrücklauf
       \t     horizontaler Tabulatorstopp
       \v     vertikaler Tabulatorstopp
mfg
Twilo

Benutzeravatar
Meillo
Moderator
Beiträge: 9281
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Übersetzung von "man echo"

Beitrag von Meillo » 15.01.2010 00:24:06

Ach die Zeilen waren auch zwei verschiedenen Dateien. Ich dachte die würden untereinander stehen, weil du sie in nur einer Box gepostet hast.

Ich sehe das keinen Widerspruch. Weiter oben in der Manpage steht, dass -e die Backslash-Interpretation anschaltet und -E sie ausschaltet. Um das mal bool'sch auszudrücken: -e == ! -E

Es ist also alles korrekt.

Vermutlich wird die deutsche Version veraltet sein (wie fast alle übersetzten Manpages). Die positive Formulierung der englischen Version ist auch die leichter verständliche, weil positive Formulierungen eingänglicher sind.



Was mir da schon mehr Sorgen macht ist die `0' die in der deutschen Version bei oktalem Zeichencode fehlt.

(And die deutsche Manpages-Leser: Viel Spaß bei der Fehlersuche, wenn es mal an sowas liegt. ;-) )
Use ed once in a while!

Benutzeravatar
Twilo
Beiträge: 255
Registriert: 21.04.2006 00:59:40
Wohnort: Berlin

Re: Übersetzung von "man echo"

Beitrag von Twilo » 15.01.2010 00:28:43

Hallo,
Meillo hat geschrieben:Ich sehe das keinen Widerspruch. Weiter oben in der Manpage steht, dass -e die Backslash-Interpretation anschaltet und -E sie ausschaltet. Um das mal bool'sch auszudrücken: -e == ! -E

Es ist also alles korrekt.
nicht ganz... denn -e muss angegeben werden, damit \n etc. funktioniert

laut man page sollte das funktionieren

Code: Alles auswählen

echo "test\ttest"
Die Ausgabe von

Code: Alles auswählen

echo -e "test\ttest"
sieht jedoch anders aus

mfg
Twilo

cosmac
Beiträge: 4576
Registriert: 28.03.2005 22:24:30

Re: Übersetzung von "man echo"

Beitrag von cosmac » 15.01.2010 01:11:12

hi,
Twilo hat geschrieben:laut man page sollte das funktionieren

Code: Alles auswählen

echo "test\ttest"
meinten Sie: "laut deutscher man page sollte...?

Aber egal, echo kann ja ein eigenes Programm sein oder in die Shell eingebaut sein. Und dann unterscheiden sich schon alleine bash und dash:
'man dash' hat geschrieben:echo [-n] args...
'man bash' hat geschrieben:echo [-neE] [arg ...]
aber damit es nicht langweilig wird, ist der Default beim "echo" der bash eine Build-Option und bei der dash ist echo überhaupt optional:
'man bash' hat geschrieben: The xpg_echo shell option may be used to dynamically determine
whether or not echo expands these escape characters by default.
'man dash' hat geschrieben:... there are several other commands that may be builtin for efficiency (e.g. printf(1), echo(1), test(1), etc).
Maschinensprache rulez!
Beware of programmers who carry screwdrivers.

Benutzeravatar
Twilo
Beiträge: 255
Registriert: 21.04.2006 00:59:40
Wohnort: Berlin

Re: Übersetzung von "man echo"

Beitrag von Twilo » 15.01.2010 07:39:45

Hallo,
cosmac hat geschrieben:
Twilo hat geschrieben:laut man page sollte das funktionieren

Code: Alles auswählen

echo "test\ttest"
meinten Sie: "laut deutscher man page sollte...?
ja

mfg
Twilo

Benutzeravatar
Meillo
Moderator
Beiträge: 9281
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: Übersetzung von "man echo"

Beitrag von Meillo » 15.01.2010 09:34:55

Twilo hat geschrieben:
Meillo hat geschrieben:Ich sehe das keinen Widerspruch. Weiter oben in der Manpage steht, dass -e die Backslash-Interpretation anschaltet und -E sie ausschaltet. Um das mal bool'sch auszudrücken: -e == ! -E

Es ist also alles korrekt.
nicht ganz... denn -e muss angegeben werden, damit \n etc. funktioniert

laut man page sollte das funktionieren

Code: Alles auswählen

echo "test\ttest"
Die Ausgabe von

Code: Alles auswählen

echo -e "test\ttest"
sieht jedoch anders aus
Weiter oben in der Manpage (jedenfalls in der englischen die ich habe, denn ich besitze keine deutschen Manpages) steht, dass -E der Default ist. Somit ist, in meinem Verständnis, -E aktiv wenn nichts angegeben wird. Und damit macht es schon einen Sinn.

Aber du hast natürlich recht, dass die Formulierung in der deutschen Manpage nicht gut gewählt ist.


btw: Portabel ist echo sowieso nur wenn das erste Argument nicht mit einem Minus beginnt. D.h. wenn echo ohne Optionen aufgerufen wird. Es gibt einfach viel zu viele unterschiedliche echo-Versionen (wie cosmac ja schon verdeutlicht hat). Für das -e Zeug ist printf(1) da.
Use ed once in a while!

Antworten