Sponsored Content
Top Forums Shell Programming and Scripting How Unix tee to send pipeline output to 2 pipes ? Post 302297433 by jack2 on Friday 13th of March 2009 10:58:07 AM
Old 03-13-2009
How Unix tee to send pipeline output to 2 pipes ?

Hi,

I would like to process, filter the same ASCII asynchronous live data stream in more than one pipe pipeline.

So the one pipeline should filter out some records using grep key word
and more than one pipes pipelines
each should grep for another key words, each set seperately for each pipe.

There is a number of good examples from the net, how to output pipe result to terminal as well as to save to a file,
but I need to process the same live data stream by a number of pipes pipelines in parallel and output the results to seperate files on-the-fly.

It would work as fork.
How can I define a numer of parallel processes, reading the same
data stream in parallel , as in the example below ?

Jack

--------

Since tee can read the standard input, and write to multiple files, we may leverage this feature so that it writes to multiple processes (instead of files).
tee >(process1) >(process2) >(process3) | process4

Here's a simple example of how to do this. Run the following command to get a directory listing on your terminal, while also redirecting the output to a file named poop.out:
ls -al | tee poop.out

echo “hello world” | tee test.txt
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

Unix Pipeline help

Does anyone know how to answer this? I have tried many different commands, I just cant get it right..... Search the file 'data' for all of the lines that contain the pattern 'unx122' and put those lines in the file 'matches'. (2 Replies)
Discussion started by: netmaster
2 Replies

2. Shell Programming and Scripting

log script input and output using tee ?

hi, new to to forum... i've been trying to create a script in tcsh but i'm having a problem with one thing... the script has to keep log of it's input and output so i'm using tee -a log | script | tee -a log this keeps the logs as asked, but it gives me an extra empty prompt (not in the... (0 Replies)
Discussion started by: moseschrist
0 Replies

3. UNIX for Advanced & Expert Users

tee into 2 named pipes

The following code does not work (zsh, Solaris), but works without the first line (files instead of pipes) :confused: mkfifo p1 p2 echo "Hello" | tee p1 > p2 & paste p1 p2 I would high appreciate any help to fix it. (9 Replies)
Discussion started by: zzol
9 Replies

4. Shell Programming and Scripting

Duplicate output without tee

Hi, Is there anyway to duplicate output without using tee? Let me explain the problem. We are use ssh to login to remote server and save output to a file using tee commands for auditing purposes. When we use vi editor in ssh session, letters get garbled and cant really use vi. Without tee it... (7 Replies)
Discussion started by: eagles1
7 Replies

5. UNIX for Dummies Questions & Answers

tee vs output redirection confusion

ok, suppose i have a file called f1 $ cat f1 this is file1 the quick brown fox jumped over the lazy dog this is file1 who let the dogs out this is unix this is file1 and i have another file f2 $ cat f2 this is file2 the task is to eliminate the repeated lines in f1 and add the... (11 Replies)
Discussion started by: c_d
11 Replies

6. Shell Programming and Scripting

Why cannot have multiple pipes from tee?

why I cannot do this? prog_name | tee logfile | awk /regexp/ | awk /regexp/ I now this is not elegant code, but am intrigued as to why multiple pipes from tee not allowed. (2 Replies)
Discussion started by: euval
2 Replies

7. Shell Programming and Scripting

problem with suppressed output to file using echo and tee command

Hi, When I run the following command in terminal it works. The string TEST is appended to a file silently. echo TEST | tee -a file.txt &>/dev/null However, when I paste this same line to a file, say shell1.sh, and use bourne shell . I run this file in terminal, ./shell1.sh. However I... (1 Reply)
Discussion started by: shahanali
1 Replies

8. Shell Programming and Scripting

how to run a script using cron job and send the output as attachment via e-mail using unix

how to run a script using cron job and send the output as attachment via e-mail using unix. please help me. how my cron job entry should be? As of now my cron job entry is to run the script at specific time, 15 03 * * * /path/sample.sh | mail -s "Logs" email_id In the above entry, what... (8 Replies)
Discussion started by: vidhyaS
8 Replies

9. Homework & Coursework Questions

program to send messages to parent using pipes and select system call

Write a program using select, which will create some number of child processes that continuously send text messages to the parent process using pipes. Each child has its own pipe that it uses to communicate with the parent. The parent uses select () to decide what pipes should be processed to... (1 Reply)
Discussion started by: ripssingh
1 Replies

10. Shell Programming and Scripting

Automatically send stdout and stderror to a file as well as to the screen, but without using tee

Hi, I've been using the following commands in my automated scripts, to ensure that all text output is sent to a log file instead of to the screen: exec 1>>$SCRIPT_LOG_FILE exec 2>>$SCRIPT_LOG_FILE However, I've now discovered that the system used for automating the script executions... (4 Replies)
Discussion started by: confusedAdmin
4 Replies
GLUSEPROGRAMSTAGES(3G)						  [FIXME: manual]					    GLUSEPROGRAMSTAGES(3G)

NAME
glUseProgramStages - bind stages of a program object to a program pipeline C SPECIFICATION
void glUseProgramStages(GLuint pipeline, GLbitfield stages, GLuint program); PARAMETERS
pipeline Specifies the program pipeline object to which to bind stages from program. stages Specifies a set of program stages to bind to the program pipeline object. program Specifies the program object containing the shader executables to use in pipeline. DESCRIPTION
glUseProgramStages binds executables from a program object associated with a specified set of shader stages to the program pipeline object given by pipeline. pipeline specifies the program pipeline object to which to bind the executables. stages contains a logical combination of bits indicating the shader stages to use within program with the program pipeline object pipeline. stages must be a logical combination of GL_VERTEX_SHADER_BIT, GL_TESS_CONTROL_SHADER_BIT, GL_TESS_EVALUATION_SHADER_BIT, GL_GEOMETRY_SHADER_BIT, and GL_FRAGMENT_SHADER_BIT. Additionally, the special value GL_ALL_SHADER_BITS may be specified to indicate that all executables contained in program should be installed in pipeline. If program refers to a program object with a valid shader attached for an indicated shader stage, glUseProgramStages installs the executable code for that stage in the indicated program pipeline object pipeline. If program is zero, or refers to a program object with no valid shader executable for a given stage, it is as if the pipeline object has no programmable stage configured for the indicated shader stages. If stages contains bits other than those listed above, and is not equal to GL_ALL_SHADER_BITS, an error is generated. ERRORS
GL_INVALID_VALUE is generated if shaders contains set bits that are not recognized, and is not the reserved value GL_ALL_SHADER_BITS. GL_INVALID_OPERATION is generated if program refers to a program object that was not linked with its GL_PROGRAM_SEPARABLE status set. GL_INVALID_OPERATION is generated if program refers to a program object that has not been successfully linked. GL_INVALID_OPERATION is generated if pipeline is not a name previously returned from a call to glGenProgramPipelines() or if such a name has been deleted by a call to glDeleteProgramPipelines(). SEE ALSO
glGenProgramPipelines(), glDeleteProgramPipelines(), glIsProgramPipeline() COPYRIGHT
Copyright (C) 2010 Khronos Group. This material may be distributed subject to the terms and conditions set forth in the Open Publication License, v 1.0, 8 June 1999. http://opencontent.org/openpub/. [FIXME: source] 05/30/2012 GLUSEPROGRAMSTAGES(3G)
All times are GMT -4. The time now is 06:53 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy