Wie man Single-Zitat in Sed entkommen?
How to escape ein einfaches Anführungszeichen in ein sed-Ausdruck, der bereits in Anführungszeichen?
Beispiel:
sed 's/ones/one's/' <<< 'ones thing'
InformationsquelleAutor der Frage Thomas Bratt | 2014-07-01
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zitat
sed
- codes, die mit doppelten Anführungszeichen:Ich weiß nicht, wie Flucht-codes mit Hunderten von backslashes – meinen Augen weh tut. In der Regel ich tun auf diese Weise:
InformationsquelleAutor der Antwort Kent
Einem trick ist die Verwendung von shell-string-Verkettung benachbarter Saiten und die Flucht der eingebettete Anführungszeichen mittels shell Escape:
sed 's/ones/two'\''s/' <<< 'ones thing'
Es werden 3 strings in der sed-Ausdruck, der die Schale, dann die Stiche zusammen:
sed 's/ones/two'
\'
's/'
Hoffe, das hilft jemand anderes!
InformationsquelleAutor der Antwort Thomas Bratt
Die besten
$'some string with \' quotes \''
zB:
InformationsquelleAutor der Antwort John C
Nur doppelte Anführungszeichen verwenden auf der Außenseite des sed-Befehl.
Funktioniert es mit Dateien zu.
Wenn man einzelne und doppelten Anführungszeichen innerhalb der Zeichenfolge, das ist auch ok. Nur die Flucht der Anführungszeichen.
Zum Beispiel, diese Datei enthält eine Zeichenfolge mit einfachen und doppelten Anführungszeichen. Ich verwende sed zum hinzufügen von einem einfachen Anführungszeichen und entfernen Sie einige doppelte Anführungszeichen.
InformationsquelleAutor der Antwort Stefanie Forrester
Ich weiß, das hört sich wie ein cop aus, aber ich konnte nie sed zu arbeiten, wenn es gab sowohl einfache und doppelte Anführungszeichen in der Zeichenfolge. Helfen, alle Neulinge wie mich, die Schwierigkeiten haben, eine option zum aufteilen der Zeichenfolge. Ich hatte zu ersetzen code in über 100-index.hmtl-Dateien. Die Saiten hatte sowohl einfache und doppelte Anführungszeichen, so dass ich nur split die Zeichenfolge und ersetzt den ersten block mit
<!--
und der zweite block mit-->
. Es machte ein Durcheinander von meinem index.html Dateien, aber es funktionierte.InformationsquelleAutor der Antwort mcmacerson