Wie zum verketten von strings zusammen in csh?

Möchte ich zum verketten von strings zusammen, um ein Kommando-string in eine csh-Skript,Datei1.csh. Allerdings csh hält Klagen von Fehlern für commandString variable und ich weiß wirklich nicht, was ich falsch gemacht habe. Hier ein Teil des codes.

set var1 = "Hat"
set var2 = 100
set embeddedString = 's/'$var1' =.*$/'$var1' = '$var2'/g'
set commandString = "sed -i ' "$embeddedString" ' productPrice.txt"
echo $commandString

Mein Ziel ist es, commandString vairable etwas wie

sed -i 's/Hat =.*$ /Hat = 100/g' productPrice.txt 

Dann, diese commandString eingefügt werden in eine andere Skript-Datei,Datei2.csh. Datei2.csh ist die eigentliche Skript-Datei, die führt die substitution Befehl für Hat der Preis. Darüber hinaus werden die Werte von var1 und var2 sind Lesen aus einem priceUpdateList.txt Datei, so dass Sie nicht mit festen Werten. Mit anderen Worten, ich kann nicht einfach geben Sie Hut und 100 in der commandString variable. Weiß jemand, wie man Zitate korrekt zu generieren, die Kommando-string in der csh ?

Danke Ihnen so sehr,

Ich kann das nicht testen, das in meiner Umwelt, aber Sie haben zu zitieren (zumindest 1x) die embedded single-quotes (also cmdStr = "sed -i \' .... Tatsächlich laufen die $cmdStr, die Sie gehen zu müssen, um eval Recht? Viel Glück.
Auch, drehen auf der shell Debuggen (hm... csh... set -vx genau wie alle anderen Schalen?). Dann kann man eine Vorstellung davon, wie die Variablen interpretiert werden. Viel Glück.
Danke so sehr viel. Bevor ich Sie will mich umbringen, es hat funktioniert.:) Ich fand heraus, dass ich erfolgreich in den commandString, aber ich konnte nicht echo. Solange jedoch csh können die Variablen, bin ich zufrieden.
kann ich diesen post als Antwort, dass Sie akzeptieren? In jedem Fall froh, dass es geholfen hat
Ja.Tun Sie dies bitte.Es tut mir Leid, ich bin nicht sicher, wie Sie Sie ändern, um es zu sein, eine Antwort, die ich angenommen habe. Wenn Sie wissen, wie zu tun, bitte gehen Sie voran und tun. Vielen Dank,

InformationsquelleAutor Cassie | 2011-11-09

Schreibe einen Kommentar