From 3cde11244d5abc82dba9759d315c0a6329988ab0 Mon Sep 17 00:00:00 2001
From: Per Cederqvist <ceder@lysator.liu.se>
Date: Fri, 24 Oct 2003 16:51:58 +0000
Subject: [PATCH] Initial commit.

---
 demo/stderr.py | 31 +++++++++++++++++++++++++++++++
 demo/stdout.py | 26 ++++++++++++++++++++++++++
 2 files changed, 57 insertions(+)
 create mode 100644 demo/stderr.py
 create mode 100644 demo/stdout.py

diff --git a/demo/stderr.py b/demo/stderr.py
new file mode 100644
index 0000000..7a5286d
--- /dev/null
+++ b/demo/stderr.py
@@ -0,0 +1,31 @@
+import os
+
+import pcl_expect.spawn
+import pcl_expect.user
+import pcl_expect
+
+pcl_expect.spawn.stty_init = "-onlcr -ocrnl"
+
+sh, sh_err = pcl_expect.spawn.spawn2(os.getenv("SHELL"))
+user = pcl_expect.user.User(pcl_expect.user.CBREAK)
+
+x = pcl_expect.Controller()
+while x.loop():
+    if x.re(user, "(?s)..*"):
+        sh.send(user.consumed)
+    elif x.re(sh_err, "(?s)..*"):
+        # user.send("STDERR: ``%s''.\n" % repr(sh_err.consumed))
+        user.send(sh_err.consumed)
+    elif x.re(sh, "(?s)..*"):
+        # user.send("STDOUT: ``%s''.\n" % repr(sh.consumed))
+        user.send(sh.consumed)
+    elif x.timeout():
+        pass
+    elif x.eof(user):
+        break
+    elif x.eof(sh_err):
+        break
+    elif x.eof(sh):
+        break
+
+sh.close()
diff --git a/demo/stdout.py b/demo/stdout.py
new file mode 100644
index 0000000..7d48d61
--- /dev/null
+++ b/demo/stdout.py
@@ -0,0 +1,26 @@
+import os
+
+import pcl_expect.spawn
+import pcl_expect.user
+import pcl_expect
+
+pcl_expect.spawn.stty_init = "-onlcr -ocrnl"
+
+sh = pcl_expect.spawn.Spawn(os.getenv("SHELL"))
+user = pcl_expect.user.User(pcl_expect.user.CBREAK)
+
+x = pcl_expect.Controller()
+while x.loop():
+    if x.re(user, "(?s)..*"):
+        sh.send(user.consumed)
+    elif x.re(sh, "(?s)..*"):
+        # user.send("STDOUT: ``%s''.\n" % repr(sh.consumed))
+        user.send(sh.consumed)
+    elif x.timeout():
+        pass
+    elif x.eof(user):
+        break
+    elif x.eof(sh):
+        break
+
+sh.close()
-- 
GitLab