2017-12-19 3 views
0

Ich habe eine Zeichenfolge wie dieserMit grep für Daten in den Set-Cookie-Header in bash bekommt

SCNT: AAAA + jMzRkQ2NjZGMTU5OTQ4NjcxQTA4OUE0MDk2RUYwRkQwMkU0OERFQjcxRkNFQUE5QzgxRUNFMkY5NzI3QjBFMjNGNTk1MTMyNjg3NDIyMkFBQzVFREJDNzdBNkI4RDNGNzVDMzVCMjIzMDNDNjhBODgzODhDOTFFNzIyNDkzMEY1RjZEQTQ0Mjc3NDYyQzJCNjI3Qjc3RTQ1Mjc2QTU2NzdCNEVCQTAwNTdFQ0Q0ODcxMDkyRUQ4OTJDNUJBNEYyNjk4NTE5NUQxMzlFQjFCMEFFRjZGODM2ODUxQkU2MEY3RDkzQTFGQUY5N0ZCRjg2NXwxAAABYG1QuD47akz0XdTR/c2RN1Q + RHpX2shK2V9u476rlbhG/c8f72E/Z5TaFIDuA Set-Cookie: aidsp = 33FD666F159948671A089A4096EF0FD02E48DEB71FCEAA9C81ECE2F9727B0E23F5951326874222AAC5EDBC77A6B8D3F75C35B22303C68A88388C91E7224930F5F6DA44277462C2B627B77E45276A5677B4EBA0057ECD4871092ED892C5BA4F26985195D139EB1B0AEF6F836851BE6;

Ich möchte beetween nur die Zeichenfolge nehmen

Set-Cookie: aidsp = thisstring;

Ich habe es mit diesem Befehl versucht

sessionID="$(echo "$resp" | awk -F[=";"] '{print $2}')" 

aber das funktioniert nicht.

+0

Ihre awk würde wahrscheinlich mit ein wenig massiert arbeiten. Die Beispieldaten, die Sie gepostet haben, sehen so aus, als ob der gewünschte Wert nicht in "$ 2" enthalten ist, aber es ist nicht klar, ob es richtig formatiert ist. – tripleee

+0

'-F [="; "]' ohne zu quotieren wird das Falsche tun, wenn Sie eine Datei im aktuellen Verzeichnis namens '-F =' oder '-F;' haben. Dies ist ein unwahrscheinlicher Fall, aber genau die Situation, die fast unmöglich zu debuggen ist, bis Sie verstehen, was vor sich geht. Sie möchten das Argument in einfache Anführungszeichen setzen, um zu vermeiden, dass die Shell irgendwelche Spielereien mit Ihnen spielt. '-F '[=;]'' (ohne Anführungszeichen um das Semikolon herum, weil Sie sie vermutlich dort platzieren, um zu verhindern, dass die Shell das Semikolon interpretiert), verhindert, dass die Shell eine Glob-Erweiterung auf dem Wert ausführt. – tripleee

Antwort

0

Verwenden grep und positive Lookbehind:

sessionID="$(echo "$resp" | grep -oP '(?<=Set-Cookie: aidsp=)[0-9A-F]*')" 
+0

aber es ist Set-Cookie zurück: aidsp = 1BDD357C232ABA2F2F52EB89D1924E969EC7D2D684B1BE21CA98ABEC5B7D9790F6A3B22756B35A214C4AF396570111404B00C9F072BEFD58236A884D3DE49B979F6CBDBE9E628A426276DFC4438FE792381A82E5BBC60C4FA0AF9160434D49B47760F4FA72A66011FA1FF86EACC1BAC0F5E11311FA8593FC; Domäne = appleid.apple.com; Pfad = /; Sichern; HttpOnly –

+0

fyi, ich laufe die Curl zu Apple und dann möchte ich Grep die Kopfzeile in Aidsp, diese Kopfzeile ist in der Set-Cookie –

+0

@ AlchaD. Kopiere meinen Befehl und versuche es erneut. Ich habe mich ein bisschen verändert. – iBug