Ich versuche den ganzen Tag, um eine gute Möglichkeit zum Parsen einiger Zeichenfolgen mit einem Shell-Skript zu finden. Die Strings werden als Aufrufparameter für einige Anwendungen verwendet.Parsing komplexe Zeichenfolge mit Shell-Skript
sie wie folgt aussieht:
parsingParams -c "id=uid5 prog=/opt/bin/example arg=\"-D -t5 >/dev/null 1>&2\" info='fdhff fd'" start
Ich bin nur zu verwenden, Shell-Skript erlaubt. Ich habe versucht, einige sed und Schnittbefehle zu verwenden, aber nichts funktioniert gut.
Meine Versuche sind wie:
prog=$(echo [email protected] | cut -d= -f3 | sed 's|\s.*$||')
, die den korrekten Wert von prog zurück, sondern für den Wert von arg ich keinen guten Weg, um es zu bekommen finden. Der Parameter info ist optional und kann auch verlassen werden. kann jemand eine gute Idee haben, die dieses Problem lösen kann? vielen Dank im Voraus
Bitte beschreiben Sie genau, was Sie wollen geparsten, das heißt, welche Teile Sie abgetrennten müssen. Das hat erhebliche Auswirkungen darauf, wie eine "richtige" Lösung aussehen würde. – DevSolar
@DevSolar Ich möchte die Werte von ID, Prog, Arg und Info extrahieren. –
Von 'parsingParams', was sie als' -c '... "' parameter? – DevSolar