-# $Id$
+# Thierry Parmentelat <thierry.parmentelat@inria.fr>
+# Copyright (C) 2010 INRIA
+#
import time, os, re, glob, sys
from pprint import PrettyPrinter
def system(command,background=False,silent=False):
- if options.dry_run:
+ if getattr(options,'dry_run',None):
print 'dry_run:',command
return 0
- if silent : command += " 2> /dev/null"
+ if silent :
+ if command.find(';')>=0: command = "(%s) 2> /dev/null" % command
+ else: command += " 2> /dev/null"
if background: command += " &"
if silent:
print '.',
# don't show in summary
print "->",now,'--',
sys.stdout.flush()
- return os.system("set -x; " + command)
+ if not silent:
+ command = "set -x; " + command
+ return os.system(command)
### WARNING : this ALWAYS does its job, even in dry_run mode
def output_of (command):
import commands
-# if options.dry_run:
-# print 'dry_run',command
-# return (0,'[[dry-run - fake output]]')
-# else:
(code,string) = commands.getstatusoutput(command)
return (code,string)
-
# convenience: translating shell-like pattern into regexp
def match (string, pattern):
# tmp - there's probably much simpler