Sponsored Content
Full Discussion: Pipelining
Top Forums Shell Programming and Scripting Pipelining Post 78244 by bakunin on Monday 18th of July 2005 05:57:23 AM
Old 07-18-2005
Pipelining

My problem is more a question of how to do it more elegantly than how to do it at all. The problem:

I have a pipeline which has to write to the screen AND to a logfile:

proc1 | tee -a <logfile>

What makes things difficult is i also need the return code of proc1. But

proc1 | tee -a <logfile> ; print - "$?"

will only display the exit code of tee, not of proc1. Of course I could use a solution with an intermediate file like:

Code:
proc > tmpfile ; RC=$?
cat tmpfile | tee -a <logfile>
print - "$RC"
rm tmpfile

This solution would work but even not taking into account that the output is displayed after instead of concurrently to the execution of proc1 to me it looks clumsy and I'd be thankful for input on how to do it better.

Thanks

bakunin
 

3 More Discussions You Might Find Interesting

1. Programming

Pipelining Processes

I am doing a program that will calculate the 199th fibonacci number using pipelines and multiple processes for each calculation. I have figured everything out except why none of the processes before the last one never execute the findfib() function; Our teacher gave us the pipeline code to... (3 Replies)
Discussion started by: Trivialnight
3 Replies

2. Shell Programming and Scripting

Bash pipelining

Hello, There is a symbolic link in a folder. I would like to read destination of this link and get base name of pointed file. Let's say, there is symlink : symlink -> ../file.txt. I can do that what I want by this script: readlink symlink | while read var do echo `basename $var` done but... (1 Reply)
Discussion started by: scdmb
1 Replies

3. UNIX for Dummies Questions & Answers

Pipelining with tar

Hello, I am currently interning at a place and my job is to essentially learn UNIX. My supervisor gives me problems here and there to help guide me with my learning but for the most part I'm doing this all by self-teaching myself. Needless to say I have run into a few obstacles...for... (12 Replies)
Discussion started by: huntreilly25
12 Replies
BOOTLOGD(8)						Linux System Administrator's Manual					       BOOTLOGD(8)

NAME
bootlogd - record boot messages SYNOPSIS
/sbin/bootlogd [-c] [-d] [-r] [-s] [-v] [ -l logfile ] [ -p pidfile ] DESCRIPTION
Bootlogd runs in the background and copies all strings sent to the /dev/console device to a logfile. If the logfile is not accessible, the messages will be kept in memory until it is. OPTIONS
-d Do not fork and run in the background. -c Attempt to write to the logfile even if it does not yet exist. Without this option, bootlogd will wait for the logfile to appear before attempting to write to it. This behavior prevents bootlogd from creating logfiles under mount points. -r If there is an existing logfile called logfile rename it to logfile~ unless logfile~ already exists. -s Ensure that the data is written to the file after each line by calling fdatasync(3). This will slow down a fsck(8) process running in parallel. -v Show version. -l logfile Log to this logfile. The default is /var/log/boot. -p pidfile Put process-id in this file. The default is no pidfile. BUGS
Bootlogd works by redirecting the console output from the console device. (Consequently bootlogd requires PTY support in the kernel con- figuration.) It copies that output to the real console device and to a log file. There is no standard way of ascertaining the real con- sole device if you have a new-style /dev/console device (major 5, minor 1) so bootlogd parses the kernel command line looking for con- sole=... lines and deduces the real console device from that. If that syntax is ever changed by the kernel, or a console type is used that bootlogd does not know about then bootlogd will not work. AUTHOR
Miquel van Smoorenburg, miquels@cistron.nl SEE ALSO
dmesg(8),fdatasync(3). Jul 21, 2003 BOOTLOGD(8)
All times are GMT -4. The time now is 04:34 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy