diff -r b5df2d4c7581 -r 2fd5fb363275 AbstractOperatingSystem.st --- a/AbstractOperatingSystem.st Mon Jan 23 10:01:40 2012 +0100 +++ b/AbstractOperatingSystem.st Mon Jan 23 14:08:04 2012 +0100 @@ -1709,6 +1709,32 @@ "Created: / 10.11.1998 / 21:05:45 / cg" ! +executeCommand:aCommandString outputTo:outStreamOrNil inDirectory:aDirectory + "much like #executeCommand:, but changes the current directory + for the command. Since this is OS specific, use this instead of + hardwiring any 'cd ..' command strings into your applictions." + + ^ self + executeCommand:aCommandString + inputFrom:nil + outputTo:outStreamOrNil + errorTo:nil + auxFrom:nil + inDirectory:aDirectory + lineWise:false + onError:[:status| false] + + " + OperatingSystem executeCommand:'tdump date.obj' inDirectory:'c:\winstx\stx\libbasic\objbc'. + OperatingSystem executeCommand:'xxdir date.obj' inDirectory:'c:\winstx\stx\libbasic\objbc'. + OperatingSystem executeCommand:'dir' inDirectory:'c:\'. + OperatingSystem executeCommand:'dir' + " + + "Modified: / 20-01-1998 / 17:03:03 / md" + "Created: / 23-01-2012 / 14:07:50 / cg" +! + getCommandOutputFrom:aCommand "execute a simple command (such as hostname) and return the commands first line of output as a string (forget stdErr). @@ -7104,11 +7130,11 @@ !AbstractOperatingSystem class methodsFor:'documentation'! version - ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.219 2012-01-20 12:33:14 cg Exp $' + ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.220 2012-01-23 13:08:04 cg Exp $' ! version_CVS - ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.219 2012-01-20 12:33:14 cg Exp $' + ^ '$Header: /cvs/stx/stx/libbasic/AbstractOperatingSystem.st,v 1.220 2012-01-23 13:08:04 cg Exp $' ! ! AbstractOperatingSystem initialize!