From 2cd95a04d367d5fdc95ac780e84fe84cee0d9cbc Mon Sep 17 00:00:00 2001 From: Alex Shinn Date: Thu, 7 Apr 2011 23:11:31 +0900 Subject: [PATCH] Adding a `system' command. --- lib/chibi/process.module | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/lib/chibi/process.module b/lib/chibi/process.module index 3f8cd5da..32e0de5b 100644 --- a/lib/chibi/process.module +++ b/lib/chibi/process.module @@ -1,6 +1,6 @@ (define-module (chibi process) - (export exit sleep alarm fork kill execute waitpid + (export exit sleep alarm fork kill execute waitpid system process-command-line process-running? set-signal-action! make-signal-set signal-set-contains? signal-set-fill! signal-set-add! signal-set-delete! @@ -16,6 +16,12 @@ (import-immutable (scheme)) (cond-expand (threads (import (srfi 18))) (else #f)) (include-shared "process") + (body + (define (system cmd . args) + (let ((pid (fork))) + (if (zero? pid) + (execute cmd (cons cmd args)) + (waitpid pid 0))))) (cond-expand (bsd #f) (else