Wie auf der echo-Zeile mit mehreren Anführungszeichen/Sonderzeichen in Datei?

Ich versuche zu echo die folgende Zeile in eine .Profil, aber es hält immer verwirrt, entweder durch die vielen Anführungszeichen oder Sonderzeichen.

bind '"e[A": history-search-backward'

Ich habe versucht, alle möglichen Dinge, aber kann Sie nicht genagelt.

Dies ist, was ich derzeit habe:

sudo su -c 'echo "bind \'\"\\e[A\": history-search-backward\'" >> /etc/profile' -

Dies ist, was es gibt:

su: user '"\e[A": does not exist

Doch, wenn ich einfach nutzen:

echo bind \'\"\\e[A\": history-search-backward\'" >> /home/user/testfile

Funktioniert es Prima.

Habe ich alle Art von "sudo su -c "echo blah..." in den rest des Skripts, die einfach gut funktionieren.

Irgendwelche Ideen?

  • \'\"\\e[A\" Gibt es ein extra \ vor dem e.
  • Er muss mit zwei umgekehrten Schrägstrichen, so dass eine wörtliche \ Hinzugefügt wird /etc/profile.
InformationsquelleAutor user1604139 | 2012-08-16
Schreibe einen Kommentar