Search Results

Search found 721 results on 29 pages for 'stdout'.

Page 5/29 | < Previous Page | 1 2 3 4 5 6 7 8 9 10 11 12  | Next Page >

  • Python: combine logging and wx so that logging stream is redirectet to stdout/stderr frame

    - by Uwe
    Here's the thing: I'm trying to combine the logging module with wx.App()'s redirect feature. My intention is to log to a file AND to stderr. But I want stderr/stdout redirected to a separate frame as is the feature of wx.App. My test code: import logging import wx class MyFrame(wx.Frame): def __init__(self): self.logger = logging.getLogger("main.MyFrame") wx.Frame.__init__(self, parent = None, id = wx.ID_ANY, title = "MyFrame") self.logger.debug("MyFrame.__init__() called.") def OnExit(self): self.logger.debug("MyFrame.OnExit() called.") class MyApp(wx.App): def __init__(self, redirect): self.logger = logging.getLogger("main.MyApp") wx.App.__init__(self, redirect = redirect) self.logger.debug("MyApp.__init__() called.") def OnInit(self): self.frame = MyFrame() self.frame.Show() self.SetTopWindow(self.frame) self.logger.debug("MyApp.OnInit() called.") return True def OnExit(self): self.logger.debug("MyApp.OnExit() called.") def main(): logger_formatter = logging.Formatter("%(name)s\t%(levelname)s\t%(message)s") logger_stream_handler = logging.StreamHandler() logger_stream_handler.setLevel(logging.INFO) logger_stream_handler.setFormatter(logger_formatter) logger_file_handler = logging.FileHandler("test.log", mode = "w") logger_file_handler.setLevel(logging.DEBUG) logger_file_handler.setFormatter(logger_formatter) logger = logging.getLogger("main") logger.setLevel(logging.DEBUG) logger.addHandler(logger_stream_handler) logger.addHandler(logger_file_handler) logger.info("Logger configured.") app = MyApp(redirect = True) logger.debug("Created instance of MyApp. Calling MainLoop().") app.MainLoop() logger.debug("MainLoop() ended.") logger.info("Exiting program.") return 0 if (__name__ == "__main__"): main() Expected behavior is: - a file is created named test.log - the file contains logging messages with level DEBUG and INFO/ERROR/WARNING/CRITICAL - messages from type INFO and ERROR/WARNING/CRITICAL are ether shown on the console or in a separate frame, depending on where they are created - logger messages that are not inside MyApp or MyFrame are displayed at the console - logger messages from inside MyApp or MyFrame are shown in a separate frame Actual behavior is: - The file is created and contains: main INFO Logger configured. main.MyFrame DEBUG MyFrame.__init__() called. main.MyFrame INFO MyFrame.__init__() called. main.MyApp DEBUG MyApp.OnInit() called. main.MyApp INFO MyApp.OnInit() called. main.MyApp DEBUG MyApp.__init__() called. main DEBUG Created instance of MyApp. Calling MainLoop(). main.MyApp DEBUG MyApp.OnExit() called. main DEBUG MainLoop() ended. main INFO Exiting program. - Console output is: main INFO Logger configured. main.MyFrame INFO MyFrame.__init__() called. main.MyApp INFO MyApp.OnInit() called. main INFO Exiting program. - No separate frame is opened, although the lines main.MyFrame INFO MyFrame.__init__() called. main.MyApp INFO MyApp.OnInit() called. shouldget displayed within a frame and not on the console. It seems to me that wx.App can't redirect stderr to a frame as soon as a logger instance uses stderr as output. wxPythons Docs claim the wanted behavior though, see here. Any ideas? Uwe

    Read the article

  • How do I define an nmake macro from command line output?

    - by Mike Atlas
    I'd like to capture the output from a tool from the command line into an nmake macro. If this were a normal command line script, it would look like this: > MyTool.exe > output.txt > set /P MyVariable=<output.txt > echo %MyVariable% However, I can't seem to find anything relevant in the nmake doc on macros that is relevant. There is scant text on the web on nmake, unfortunately... This is basically what I'd like to do, though: target: @call MyTool.exe > output.txt # This doesn't work in .mak, unfortunately. Help! @MyVariable=<output.txt @echo $(MyVariable)

    Read the article

  • Bourne Script: Redirect success messages but NOT error messages

    - by sixtyfootersdude
    This command: keytool -import -file "$serverPath/$serverCer" -alias "$clientTrustedCerAlias" -keystore "$clientPath/$clientKeystore" -storepass "$serverPassword" -noprompt Will when it runs successfully outputs: Certificate was added to keystore I tried redirecting the stdard out with: keytool ... > /dev/null But it is still printing. It appears that the message is being output into standard error. Since when I do this it is not displayed: keytool ... > /dev/null 2>&1 However this is not what I am wanting to do. I would like error messages to be output normally but I do not want "success" messages to be output to the command line. Any ideas? Whatever happened to unix convention: "If it works do not output anything".

    Read the article

  • C++ alignment when printing cout <<

    - by user69514
    Is there a way to align text when priting using cout? I'm using tabs, but when the words are too big they won't be aligned anymore Sales Report for September 15, 2010 Artist Title Price Genre Disc Sale Tax Cash Merle Blue 12.99 Country 4% 12.47 1.01 13.48 Richard Music 8.49 Classical 8% 7.81 0.66 8.47 Paula Shut 8.49 Classical 8% 7.81 0.72 8.49

    Read the article

  • Problem reading from the StandarOutput from ftp.exe. Possible System.Diagnostics.Process Framework b

    - by SoMoS
    Hello, I was trying some stuff executing console applications when I found this problem handling the I/O of the ftp.exe command that everybody has into the computer. Just try this code: m_process = New Diagnostics.Process() m_process.StartInfo.FileName = "ftp.exe" m_process.StartInfo.CreateNoWindow = True m_process.StartInfo.RedirectStandardInput = True m_process.StartInfo.RedirectStandardOutput = True m_process.StartInfo.UseShellExecute = False m_process.Start() m_process.StandardInput.AutoFlush = True m_process.StandardInput.WriteLine("help") MsgBox(m_process.StandardOutput.ReadLine()) MsgBox(m_process.StandardOutput.ReadLine()) MsgBox(m_process.StandardOutput.ReadLine()) MsgBox(m_process.StandardOutput.ReadLine()) This should show you the text that ftp sends you when you do that from the command line: Los comandos se pueden abreviar. Comandos: ! delete literal prompt send ? debug ls put status append dir mdelete pwd trace ascii disconnect mdir quit type bell get mget quote user binary glob mkdir recv verbose bye hash mls remotehelp cd help mput rename close lcd open rmdir Instead of that I'm getting the first line and 3 more with garbage, after that the call to ReadLine block like if there was no data available. Any hints about that?

    Read the article

  • How to prevent buffer overflow in C/C++?

    - by alexpov
    Hello, i am using the following code to redirect stdout to a pipe, then read all the data from the pipe to a buffer. I have 2 problems: first problem: when i send a string (after redirection) bigger then the pipe's BUFF_SIZE, the program stops responding (deadlock or something). second problem: when i try to read from a pipe before something was sent to stdout. I get the same response, the program stops responding - _read command stuck's ... The issue is that i don't know the amount of data that will be sent to the pipe after the redirection. The first problem, i don't know how to handle and i'll be glad for help. The second problem i solved by a simple workaround, right after the redirection i print space character to stdout. but i guess that this solution is not the correct one ... #include <fcntl.h> #include <io.h> #include <iostream> #define READ 0 #define WRITE 1 #define BUFF_SIZE 5 using namespace std; int main() { int stdout_pipe[2]; int saved_stdout; saved_stdout = _dup(_fileno(stdout)); // save stdout if(_pipe(stdout_pipe,BUFF_SIZE, O_TEXT) != 0 ) // make a pipe { exit(1); } fflush( stdout ); if(_dup2(stdout_pipe[1], _fileno(stdout)) != 0 ) //redirect stdout to the pipe { exit(1); } ios::sync_with_stdio(); setvbuf( stdout, NULL, _IONBF, 0 ); //anything sent to stdout goes now to the pipe //printf(" ");//workaround for the second problem printf("123456");//first problem char buffer[BUFF_SIZE] = {0}; int nOutRead = 0; nOutRead = _read(stdout_pipe[READ], buffer, BUFF_SIZE); //second problem buffer[nOutRead] = '\0'; // reconnect stdout if (_dup2(saved_stdout, _fileno(stdout)) != 0 ) { exit(1); } ios::sync_with_stdio(); printf("buffer: %s\n", buffer); } Thanks, Alex

    Read the article

  • Wrapper around bash, control STDIN and STDOUT

    - by blinry
    I would like to talk to a interactive bash process. Here is an example, so you know what I want to archieve: Program starts a new bash process. User types "ls" into my program. Program sends this command to the bash process. Program reads all available output of the bash (including the prompt) and displays it back to the user. GOTO 1 As you can guess, there is much room for nifty manipulations here and there... ;-) It would be wonderful if this also worked for subprocesses (started by the bash process) and curses-based programs. I would like to implement this functionality in Ruby, and already have experimented with IO.popen, but strange things happen. You are also welcome to do this in other languages.

    Read the article

  • Redirect and parse in realtime stdout of an long running process in vb.net

    - by Richard
    Hello there, This code executes "handbrakecli" (a command line application) and places the output into a string: Dim p As Process = New Process p.StartInfo.FileName = "handbrakecli" p.StartInfo.Arguments = "-i [source] -o [destination]" p.StartInfo.UseShellExecute = False p.StartInfo.RedirectStandardOutput = True p.Start Dim output As String = p.StandardOutput.ReadToEnd p.WaitForExit The problem is that this can take up to 20 minutes to complete during which nothing will be reported back to the user. Once it's completed, they'll see all the output from the application which includes progress details. Not very useful. Therefore I'm trying to find a sample that shows the best way to: Start an external application (hidden) Monitor its output periodically as it displays information about it's progress (so I can extract this and present a nice percentage bar to the user) Determine when the external application has finished (so I can't continue with my own applications execution) Kill the external application if necessary and detect when this has happened (so that if the user hits "cancel", I get take the appropriate steps) Does anyone have any recommended code snippets?

    Read the article

  • Redirecting multiple stdouts to single file

    - by obvio171
    I have a program running on multiple machines with NFS and I'd like to log all their outputs into a single file. Can I just run ./my_program >> filename on every machine or is there an issue with concurrency I should be aware of? Since I'm only appending, I don't think there would be a problem, but I'm just trying to make sure.

    Read the article

  • using bash: write bit representation of integer to file

    - by theseion
    Hullo First, I want to use bash for this and the script should run on as many systems as possible (I don't know if the target system will have python or whatever installed). Here's the problem: I have a file with binary data and I need to replace a few bytes in a certain position. I've come up with the following to direct bash to the offset and show me that it found the place I want: dd bs=1 if=file iseek=24 conv=block cbs=2 | hexdump Now, to use "file" as the output: echo anInteger | dd bs=1 of=hextest.txt oseek=24 conv=block cbs=2 This seems to work just fine, I can review the changes made in a hex editor. Problem is, "anInteger" will be written as the ASCII representation of that integer (which makes sense) but I need to write the binary representation. How do I tell the command to convert the input to binary (possibly from a hex)?

    Read the article

  • Pipe ffmpeg to oggenc(2) with .NET

    - by acidzombie24
    I am trying to encode ogg files at -q 6/192k. ffmpeg doesnt seem to be listenting to my command ffmpeg -i blah -acodec vorbis -ab 192k -y out.ogg So i would like to use the recommended ogg encoder. It says the input must be wav or similar. I would like to pipe a wav from ffmpeg to ogg. However not only am i unsure if oggenc2 will accept input from stdin, i have no idea how to pipe one process to another inside of .net using the Process class.

    Read the article

  • How to catch printf from a dll?

    - by Xarx
    I've got a C++ console application that uses a third-party dll (jvm.dll, indirectly) that uses printf to print various error messages (Java stacktrace). I need to catch these stacktraces to a string in order to process them further, or at least to see them printed on the console. The thing is that I see the stacktrace only when debugging my application in VisualStudio (VS 2010). When I run my application in the "normal way", i.e. from the command line, nothing is printed on the console. So VS is able to somehow interfere the java output and display it. I need to be able to do the same thing. I've already tried freopen(), but without success. Also, I've found this question on the same problem, but without a clear answer.

    Read the article

  • Rewinding std::cout to go back to the beginning of a line

    - by fbrereto
    I'm writing a command-line tool for Mac OS X that processes a bunch of files. I would like to show the user the current file being processed, but do not want a bazillion files polluting the terminal window. Instead I would like to use a single line to output the file path, then reuse that line for the next file. Is there a character (or some other code) to output to std::cout to accomplish this? Also, if I wanted to re-target this tool for Windows, would the solution be the same for both platforms?

    Read the article

  • Copying data from STDOUT to a remote machine using SFTP

    - by freddie
    In order to backup large database partitions to a remote machine using SFTP, I'd like to use the databases dump command and send it directly over using SFTP to a remote location. This is useful when needing to dump large data sets when you don't have enough local disk space to create the backup file, and then copy it to a remote location. I've tried using python + paramiko which provides this functionality, but the performance much worse than using the native openssh/sftp binary to transfer files. Does anyone have any idea on how to do this either with the native sftp client on linux, or some library like paramiko? (but one that performs close to the native sftp client)?

    Read the article

  • How do I define nmake macro from command line output?

    - by Mike Atlas
    I'd like to capture the output from a tool from the command line into an nmake macro. If this were a normal command line script, it would look like this: > MyTool.exe > output.txt > set /P MyVariable=<output.txt > echo %MyVariable% However, I can't seem to find anything relevant in the nmake doc on macros that is relevant. This is basically what I'd like to do, though: target: @call MyTool.exe > output.txt # This doesn't work in .mak, unfortunately. Help! @MyVariable=<output.txt

    Read the article

  • Ruby: Read large data from stdout and stderr of an external process on Windows

    - by BinaryMuse
    Greetings, all, I need to run a potentially long-running process from Ruby on Windows and subsequently capture and parse the data from the external process's standard output and error. A large amount of data can be sent to each, but I am only necessarily interested in one line at a time (not capturing and storing the whole of the output). After a bit of research, I found that the Open3 class would take care of executing the process and giving me IO objects connected to the process's standard output and error (via popen3). Open3.popen3("external-program.bat") do |stdin, out, err, thread| # Step3.profit() ? end However, I'm not sure how to continually read from both streams without blocking the program. Since calling IO#readlines on out or err when a lot of data has been sent results in a memory allocation error, I'm trying to continuously check both streams for available input, but not having much luck with any of my implementations. Thanks in advance for any advice!

    Read the article

  • Get active window title in X

    - by dutt
    I'm trying to get the title of the active window. The application is a background task so if the user has Eclipse open the function returns "Eclipse - blabla", so it's not getting the window title of my own window. I'm developing this in Python 2.6 using PyQt4. My current solution, borrowed and slightly modified from an old answer here at SO, looks like this: def get_active_window_title(): title = '' root_check = '' root = Popen(['xprop', '-root'], stdout=PIPE) if root.stdout != root_check: root_check = root.stdout for i in root.stdout: if '_NET_ACTIVE_WINDOW(WINDOW):' in i: id_ = i.split()[4] id_w = Popen(['xprop', '-id', id_], stdout=PIPE) for j in id_w.stdout: if 'WM_ICON_NAME(STRING)' in j: if title != j.split()[2]: return j.split("= ")[1].strip(' \n\"') It works for most windows, but not all. For example it can't find my kopete chat windows, or the name of the application i'm currently developing. My next try looks like this: def get_active_window_title(self): screen = wnck.screen_get_default() if screen == None: return "Could not get screen" window = screen.get_active_window() if window == None: return "Could not get window" title = window.get_name() return title; But for some reason window is always None. Does somebody have a better way of getting the current window title, or how to modify one of my ways, that works for all windows? Edit: In case anybody is wondering this is the way I found that seems to work for all windows. def get_active_window_title(self): root_check = '' root = Popen(['xprop', '-root'], stdout=PIPE) if root.stdout != root_check: root_check = root.stdout for i in root.stdout: if '_NET_ACTIVE_WINDOW(WINDOW):' in i: id_ = i.split()[4] id_w = Popen(['xprop', '-id', id_], stdout=PIPE) id_w.wait() buff = [] for j in id_w.stdout: buff.append(j) for line in buff: match = re.match("WM_NAME\((?P<type>.+)\) = (?P<name>.+)", line) if match != None: type = match.group("type") if type == "STRING" or type == "COMPOUND_TEXT": return match.group("name") return "Active window not found"

    Read the article

  • C++ print value of a pointer

    - by user69514
    I have an array of double pointers, but every time I try do print one of the values the address gets printed. How do I print the actual value? cout << arr[i] ? cout << &arr[i] ? they both print the address Does anyone know?

    Read the article

  • Execute and Capture one program from another

    - by DandDI
    In win32 programming in C: Whats the best way to execute a win32 console program within another win32 program, and have the program that started the execution capture the output? At the moment I made the program redirect output to a file, but I am sure I must be able to open some sort of pipe?

    Read the article

  • relaunch app when it ends or when it prints out certain text (stdout)

    - by acidzombie24
    I have an app which acts almost like a daemon. Sometimes it quits on error and many times it prints an error msg then ask users to press any key to close. How can i relaunch the app when either case happens? I am more interested in the 2nd case. I can do this in c++, C# or python. The script is an old python that i dont want to change (a newer c# version is in the works but not stable)

    Read the article

  • C++: Print only one char

    - by Martijn Courteaux
    Hi, When I read one char* from std::cin and I want to write it to std::cout, it prints until it finds a \0 in memory. So what did was: char c; cin >> c; char* pChar = &c; pChar++; *pChar = '\0'; println(&c); // My own method: void println(char * str) { cout << str << endl; } But I don't think this is a safe action. Is there a safer way to do this?

    Read the article

  • php/ssh2 script does not display the stdout to $stream

    - by kamal
    The following php script works for simple linux commands, like ps -ef , but when i use ./dstat -t -a , it seems to hang and i dont get the prompt back on my local machine. Kep in mind that all commands are executed over ssh on a remote host: <?php $target = time() . '_' . 'txt'; if($ssh = ssh2_connect('10.1.0.174', 22)) { if(ssh2_auth_password($ssh, 'root', 'kmoon77')) { //$stream = ssh2_exec($ssh, 'whoami'); $sCommand = 'dstat -a'; //$sCommand = 'ps -ef'; $stream = ssh2_exec($ssh, $sCommand); //$stream = ssh2_exec($ssh, 'pwd'); stream_set_blocking($stream, true); $data = ''; while($buffer = fread($stream, 4096)) { $data .= $buffer; } //fclose($stream); echo $data; // user } } ?>

    Read the article

  • the problem of redirecting stdout in c#

    - by Mher
    Could you please explain why the shell redirection doesn't work with System.Diagnostics.Process class? I am trying to redirect the output streams to file with the following snippet: Process p = new Process(); p.StartInfo = new ProcessStartInfo(); p.StartInfo.FileName = "java.exe"; p.StartInfo.Arguments = @"> c:\Temp\test.log 2>&1"; p.StartInfo.UseShellExecute = true; p.Start(); The similar code works without problems with Python. Reading the output streams programmatically doesn't seem a preferable solution in my case because there will be a bunch of processes launched by my application.

    Read the article

  • Python: Closing a for loop by reading stdout

    - by user1732102
    import os dictionaryfile = "/root/john.txt" pgpencryptedfile = "helloworld.txt.gpg" array = open(dictionaryfile).readlines() for x in array: x = x.rstrip('\n') newstring = "echo " + x + " | gpg --passphrase-fd 0 " + pgpencryptedfile os.popen(newstring) I need to create something inside the for loop that will read gpg's output. When gpg outputs this string gpg: WARNING: message was not integrity protected, I need the loop to close and print Success! How can I do this, and what is the reasoning behind it? Thanks Everyone!

    Read the article

< Previous Page | 1 2 3 4 5 6 7 8 9 10 11 12  | Next Page >