Ausführen von shell-script aus einem ruby Skript
Habe ich Folgendes:
_shellScript = "../Dependency/test.sh"
exec 'sh #{_shellScript}'
Aber wenn ich auf ausführen des ruby-Skript endet es mich an einem shell-prompt anstelle der Ausführung des Skripts, die sich innerhalb der variable _shellScript.
Irgendwelche Ideen wäre geschätzt!
- Der code verwendet einfache Anführungszeichen in den
exec
string. In single quote String Ruby keine interpolation (#{}
). Das könnte auch der Fehler.
Du musst angemeldet sein, um einen Kommentar abzugeben.
In Ruby
exec
endet der Ruby-Prozess und übergibt die shell dem Kind angegeben. Wenn Sie brauchen, um alletest.sh
's Ausgabe in der Konsole, Sie wollensystem("sh #{_shellScript}")
. Wenn Sie brauchen, um Daten zu geben und Sie zu empfangen, über stdin und stdout, Blick aufpopen
.#
im'sh #{_shellScript}'
wird gesehen werden als ein Kommentar, also wird es das gleiche wie zu sagenexec 'sh'
und dort die Eingabeaufforderung.exec
stattsystem
) in der gleichen Zeit 🙂Versuchen Sie einfach die folgende Zeile: