Echo-String in tcsh mit Escape-Zeichen

1477
spookypeanut

Ist es möglich, eine Zeichenfolge in tcsh so auszugeben, dass sie vollständig escape ist, wie dies von tcsh verstanden wird? Genauso wie printf% q in bash funktioniert:

% # Create a variable containing a tab character % MYMONKEY=$'my\tmonkey' % printf %q "$MYMONKEY" $'my\tmonkey' 

Damit kann die Variable dann erneut in die Bash eingegeben werden. Kennt jemand etwas Ähnliches in tcsh?

2
Ich hatte normalerweise ein Filterprogramm (sed script) zu diesem Zweck schreiben müssen. mdpc vor 11 Jahren 0

1 Antwort auf die Frage

0
Hastur

Problemumgehung:

in tcsh

setze MYMONKEY = "mein \ tmonkey"

Beachten Sie, dass Sie am Ende kein "\ n" hinzufügen, sodass die Ausgabe diese Entscheidung widerspiegelt:

 printf "%s" $MYMONKEY my\tmonkey_My_Login_Name_@myhost>  to fix it you can use   printf "%s\n" $MYMONKEY my\tmonkey _My_Login_Name_@myhost> 

oder

 printf $MYMONKEY my monkey_My_Login_Name_@myhost>_  echo $MYMONKEY my monkey _My_Login_Name_@myhost>_