squier Geschrieben 8. April 2011 Teilen Geschrieben 8. April 2011 Hallo, ich suche schon eine Weile nach einer Möglichkeit, Benutzereingabe zu verskripten. Szenario: Ich habe ein Skript 1.sh, welches nach Aufruf mittels ./1.sh folgende Ausgabe tätigt: "Gib etwas ein:" => dies wird per "read" in eine Variable entgegengenommen und weiterverarbeitet. (dieses Skript kann/darf nicht von mir bearbeitet werden) Nun möchte ich mit einem zweiten Skript 2.sh dieses erste Skript 1.sh aufrufen und gleich die Benutzereingabe übergeben. (bei diesem Skript kann ich alles mögliche bearbeiten) => Ist dies möglich? Viele Grüße, squier Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Genodi Geschrieben 9. April 2011 Teilen Geschrieben 9. April 2011 Hi, das scheint schwierig zu sein, da ein "read" erst dann den Wert erwartet. Vielleicht holt der sich den Wert ja aus dem stdin. du könntest es ja mal so versuchen: echo "deineEingabe" | 1.sh Wobei ich glaube, dass das nicht funktionieren wird. da müsste man schon das 1.sh bearbeiten. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
squier Geschrieben 10. April 2011 Autor Teilen Geschrieben 10. April 2011 Danke für den Tipp. Es klappt, wenn ich das erste Script 1.sh so aufrufe: echo "deineEingabe" | sh 1.sh 1.sh: echo Input1: read inputScriptOne echo Output: $inputScriptOne 2.sh: echo $1 | sh 1.sh => Aufruf: >sh 2.sh inputScriptTwo Das Argument inputScriptTwo beim Aufruf wird erfolgreich an das Script 1.sh weitergeleitet/übergeben. Wenn ich allerdings mehrere Argumente übergebe, werden diese auf eine Variable (und zwar die erste verwendete) im Script 1.sh abgebildet. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Genodi Geschrieben 10. April 2011 Teilen Geschrieben 10. April 2011 super, gerne!!! Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.