# Text ohne Hochkomma und <



## XChris (19. Juni 2013)

Hallo

ich möchte die Zeichen *" ' <*  und *>* einer Variable mit einem / maskieren. Leider habe ich mit der UNIX Shell nicht oft was zu tun.

So sieht mein Code aus - leider tut er es noch nicht:


```
{...}

export testvar

$testvar = {funktion, welche den Text liefert. Zum Beispiel ORA-19293 System "gsgsg" < 'spielwiese' }

# und hier ist mein Knackpunkt:
$testvar = $testvar | sed -e '[<>/"/'] /s//'


[<>/"/']
```

Für einen kräftigen Griff unter die Arme wäre ich echt dankbar.


----------



## deepthroat (19. Juni 2013)

Hi.

Erstmal sieht eine Zuweisung an Variablen so aus:

```
testvar=…
```
Also ohne $ und ohne Leerzeichen um das = Zeichen.

Dann die Maskierungsregeln:

1. _jedes _Zeichen innerhalb von ' verliert seine spezielle Bedeutung
2. spezielle Zeichen innerhalb von " können mit einem Backslash entwertet werden

Für deinen Fall wurde es sich anbieten Regel 2 zu verwenden.


```
echo "<'\">"
```

Eine Umleitung mittels | Zeichen funktioniert nur wenn etwas auf die Standardausgabe geschrieben wird. Zeile 8 müßte irgendwo einen Befehl enthalten.

Das s Kommando von sed funktioniert auch anders. Du musst schon angeben was du durch was ersetzen willst.

Das war jetzt aber mehr als kräftig...


----------

