Wie man einen String an die stdin einer Executable mit invoke.run() in Python übergibt
In unserem vorherigen Beispiel Wie man stdout mit invoke.run() in Python in einen String umleitet haben wir gezeigt, wie man invoke.run(..., out_stream=...) verwendet, um stdout in ein StringIO umzuleiten, das dann in einen String konvertiert werden kann.
Ebenso können wir einen String an die stdin des Subprozesses übergeben, indem wir ihn zuerst in ein StringIO konvertieren und dann invoke.run(..., in_stream=...) verwenden.
invoke_pass_stdin_example.py
stdin_str = "abc123" # what we want to pass to stdint
stdin_io = StringIO(stdin_str)
result = invoke.run("myexecutable", in_stream=stdin_in)
# ...Check out similar posts by category:
Python
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow