Sponsored Content
Top Forums Shell Programming and Scripting hiding output from find command Post 302157905 by rubio on Sunday 13th of January 2008 02:38:23 PM
Old 01-13-2008
I believe its because the "find: cannot open ..."

is going to STDERR and

and you are piping the STDOUT to grep -v
rubio
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

output of find command

Hi, I am confused about the output of find command. Please see the two find commands below. When i put "*.c" i get lots of files. But when i put *c only i get only one file. Any answer?? $ find . -name "*c" ./clarify/cheval/hp_server/rulemanager/rulemansvc... (3 Replies)
Discussion started by: shriashishpatil
3 Replies

2. Shell Programming and Scripting

Incorrect output using find command

I'm using the below command to list files older than 2 hours but it returns redundant output, am I missing something. # find . -mmin +120 -exec ls -l {} \; total 0 -rw-r--r-- 1 root system 0 Oct 13 09:52 test1 -rw-r--r-- 1 root system 0 Oct 13 09:52 test2 -rw-r--r-- 1 root ... (5 Replies)
Discussion started by: mbak
5 Replies

3. UNIX for Dummies Questions & Answers

problem with output of find command being input to basename command...

Hi, I am triying to make sure that there exists only one file with the pattern abc* in path /path/. This directory is having many huge files. If there is only one file then I have to take its complete name only to use furter in my script. I am planning to do like this: if ; then... (2 Replies)
Discussion started by: new_learner
2 Replies

4. Shell Programming and Scripting

Wrong output in find command

Hi guys - I am trying a small script to tell me if there is a file that exists less than 1k. It should report ERROR, otherwise the check is good. I wrote this script down, however it never runs in the if/then statement. It always returns the echo ERROR. MYSIZE=$(find /home/student/dir1... (8 Replies)
Discussion started by: DallasT
8 Replies

5. AIX

find command modify the output

Hello All, I am new to this shell scripting , I wanted to modify the output of my find command such that it does not display the path but only file names , for example I am searching for the files which are modified in the last 24 hours which is find /usr/monitor/text/ -type f -mtime... (3 Replies)
Discussion started by: raokl
3 Replies

6. Shell Programming and Scripting

Output of find command to variable?

Hi, I'd like to assign the output of the find command to a variable. What I need is to run the find command, and if it returns zero files, the program exits. so i'm trying to assign the output of the find command to the $var1 variable....and then if this is less than one, I echo a... (2 Replies)
Discussion started by: horhif
2 Replies

7. Shell Programming and Scripting

Compare the output of find command

Hi All, I am trying to run find command in a script to list out certain files based on a patter. However, when there is no file in the output, the script should exit. Tried a couple of operators (-n, -z) etc but the script does not work. I am confused whether a null string is returned... (3 Replies)
Discussion started by: danish0909
3 Replies

8. Programming

Hiding commnd line arguments in ps command on Linux

Hi Unix lovers, I am trying to seek an explanation for a simple looking code - why it works? I found below program which hide command line argument in ps command. #include <string.h> int main(int argc, char **argv) { // process command line arguments.... // hide command... (4 Replies)
Discussion started by: shriashishpatil
4 Replies

9. Shell Programming and Scripting

Better Align--output of find command

Hi, i have sh program which search for a file in a folder structure and provides its path. This is just used to see if that file exits more that once anywhere down the folder structure. I have used find command to search & printing it output on terminal. I have attached screen shot of it.... (10 Replies)
Discussion started by: praveenkumar198
10 Replies

10. UNIX for Beginners Questions & Answers

Find Memory and activity from command output

Hello - I have a requirement to get the Memory(Xmx) and the activity name using it. Sample input info : 1502 02:57 /bin/sh /opt/rather/bar/deploy/bar_run.sh 1545 02:57 java -Drather.repository=/opt/rather/bar/deploy/JobSyng_Barol_Count/JobSyng_Barol_Count/../lib -Xms1024M... (3 Replies)
Discussion started by: Varja
3 Replies
Test::Output(3pm)					User Contributed Perl Documentation					 Test::Output(3pm)

NAME
Test::Output - Utilities to test STDOUT and STDERR messages. VERSION
Version 0.16 SYNOPSIS
use Test::More tests => 4; use Test::Output; sub writer { print "Write out. "; print STDERR "Error out. "; } stdout_is(&writer,"Write out. ",'Test STDOUT'); stderr_isnt(&writer,"No error out. ",'Test STDERR'); combined_is( &writer, "Write out. Error out. ", 'Test STDOUT & STDERR combined' ); output_is( &writer, "Write out. ", "Error out. ", 'Test STDOUT & STDERR' ); # Use bare blocks. stdout_is { print "test" } "test", "Test STDOUT"; stderr_isnt { print "bad test" } "test", "Test STDERR"; output_is { print 'STDOUT'; print STDERR 'STDERR' } "STDOUT", "STDERR", "Test output"; DESCRIPTION
Test::Output provides a simple interface for testing output sent to STDOUT or STDERR. A number of different utilities are included to try and be as flexible as possible to the tester. Originally this module was designed not to have external requirements, however, the features provided by Sub::Exporter over what Exporter provides is just to great to pass up. Test::Output ties STDOUT and STDERR using Test::Output::Tie. TESTS
STDOUT stdout_is stdout_isnt stdout_is ( $coderef, $expected, 'description' ); stdout_is { ... } $expected, 'description'; stdout_isnt( $coderef, $expected, 'description' ); stdout_isnt { ... } $expected, 'description'; stdout_is() captures output sent to STDOUT from $coderef and compares it against $expected. The test passes if equal. stdout_isnt() passes if STDOUT is not equal to $expected. stdout_like stdout_unlike stdout_like ( $coderef, qr/$expected/, 'description' ); stdout_like { ... } qr/$expected/, 'description'; stdout_unlike( $coderef, qr/$expected/, 'description' ); stdout_unlike { ... } qr/$expected/, 'description'; stdout_like() captures the output sent to STDOUT from $coderef and compares it to the regex in $expected. The test passes if the regex matches. stdout_unlike() passes if STDOUT does not match the regex. STDERR stderr_is stderr_isnt stderr_is ( $coderef, $expected, 'description' ); stderr_is {... } $expected, 'description'; stderr_isnt( $coderef, $expected, 'description' ); stderr_isnt {... } $expected, 'description'; stderr_is() is similar to stdout_is, except that it captures STDERR. The test passes if STDERR from $coderef equals $expected. stderr_isnt() passes if STDERR is not equal to $expected. stderr_like stderr_unlike stderr_like ( $coderef, qr/$expected/, 'description' ); stderr_like { ...} qr/$expected/, 'description'; stderr_unlike( $coderef, qr/$expected/, 'description' ); stderr_unlike { ...} qr/$expected/, 'description'; stderr_like() is similar to stdout_like() except that it compares the regex $expected to STDERR captured from $codref. The test passes if the regex matches. stderr_unlike() passes if STDERR does not match the regex. COMBINED OUTPUT combined_is combined_isnt combined_is ( $coderef, $expected, 'description' ); combined_is {... } $expected, 'description'; combined_isnt ( $coderef, $expected, 'description' ); combined_isnt {... } $expected, 'description'; combined_is() directs STDERR to STDOUT then captures STDOUT. This is equivalent to UNIXs 2>&1. The test passes if the combined STDOUT and STDERR from $coderef equals $expected. combined_isnt() passes if combined STDOUT and STDERR are not equal to $expected. combined_like combined_unlike combined_like ( $coderef, qr/$expected/, 'description' ); combined_like { ...} qr/$expected/, 'description'; combined_unlike ( $coderef, qr/$expected/, 'description' ); combined_unlike { ...} qr/$expected/, 'description'; combined_like() is similar to combined_is() except that it compares a regex ($expected) to STDOUT and STDERR captured from $codref. The test passes if the regex matches. combined_unlike() passes if the combined STDOUT and STDERR does not match the regex. OUTPUT output_is output_isnt output_is ( $coderef, $expected_stdout, $expected_stderr, 'description' ); output_is {... } $expected_stdout, $expected_stderr, 'description'; output_isnt( $coderef, $expected_stdout, $expected_stderr, 'description' ); output_isnt {... } $expected_stdout, $expected_stderr, 'description'; The output_is() function is a combination of the stdout_is() and stderr_is() functions. For example: output_is(sub {print "foo"; print STDERR "bar";},'foo','bar'); is functionally equivalent to stdout_is(sub {print "foo";},'foo') && stderr_is(sub {print STDERR "bar";'bar'); except that $coderef is only executed once. Unlike, stdout_is() and stderr_is() which ignore STDERR and STDOUT respectively, output_is() requires both STDOUT and STDERR to match in order to pass. Setting either $expected_stdout or $expected_stderr to "undef" ignores STDOUT or STDERR respectively. output_is(sub {print "foo"; print STDERR "bar";},'foo',undef); is the same as stdout_is(sub {print "foo";},'foo') output_isnt() provides the opposite function of output_is(). It is a combination of stdout_isnt() and stderr_isnt(). output_isnt(sub {print "foo"; print STDERR "bar";},'bar','foo'); is functionally equivalent to stdout_is(sub {print "foo";},'bar') && stderr_is(sub {print STDERR "bar";'foo'); As with output_is(), setting either $expected_stdout or $expected_stderr to "undef" ignores the output to that facility. output_isnt(sub {print "foo"; print STDERR "bar";},undef,'foo'); is the same as stderr_is(sub {print STDERR "bar";},'foo') output_like output_unlike output_like ( $coderef, $regex_stdout, $regex_stderr, 'description' ); output_like { ... } $regex_stdout, $regex_stderr, 'description'; output_unlike( $coderef, $regex_stdout, $regex_stderr, 'description' ); output_unlike { ... } $regex_stdout, $regex_stderr, 'description'; output_like() and output_unlike() follow the same principles as output_is() and output_isnt() except they use a regular expression for matching. output_like() attempts to match $regex_stdout and $regex_stderr against STDOUT and STDERR produced by $coderef. The test passes if both match. output_like(sub {print "foo"; print STDERR "bar";},qr/foo/,qr/bar/); The above test is successful. Like output_is(), setting either $regex_stdout or $regex_stderr to "undef" ignores the output to that facility. output_like(sub {print "foo"; print STDERR "bar";},qr/foo/,undef); is the same as stdout_like(sub {print "foo"; print STDERR "bar";},qr/foo/); output_unlike() test pass if output from $coderef doesn't match $regex_stdout and $regex_stderr. EXPORTS
By default, all tests are exported, however with the switch to Sub::Exporter export groups are now available to better limit imports. To import tests for STDOUT: use Test::Output qw(:stdout); To import tests STDERR: use Test::Output qw(:stderr); To import just the functions: use Test::Output qw(:functions); And to import all tests: use Test::Output; The following is a list of group names and which functions are exported: stdout stdout_is stdout_isnt stdout_like stdout_unlike stderr stderr_is stderr_isnt stderr_like stderr_unlike output output_is output_isnt output_like output_unlike combined combined_is combined_isnt combined_like combined_unlike tests All of the above, this is the default when no options are given. Sub::Exporter allows for many other options, I encourage reading its documentation. FUNCTIONS
stdout_from my $stdout = stdout_from($coderef) my $stdout = stdout_from { ... }; stdout_from() executes $coderef and captures STDOUT. stderr_from my $stderr = stderr_from($coderef) my $stderr = stderr_from { ... }; stderr_from() executes $coderef and captures STDERR. output_from my ($stdout, $stderr) = output_from($coderef) my ($stdout, $stderr) = output_from {...}; output_from() executes $coderef one time capturing both STDOUT and STDERR. combined_from my $combined = combined_from($coderef); my $combined = combined_from {...}; combined_from() executes $coderef one time combines STDOUT and STDERR, and captures them. combined_from() is equivalent to using 2>&1 in UNIX. AUTHOR
Currently maintained by brian d foy, "bdfoy@cpan.org". Shawn Sorichetti, "<ssoriche@cpan.org>" SOURCE AVAILABILITY
This module is in Github: http://github.com/briandfoy/test-output/tree/master BUGS
Please report any bugs or feature requests to "bug-test-output@rt.cpan.org", or through the web interface at <http://rt.cpan.org>. I will be notified, and then you'll automatically be notified of progress on your bug as I make changes. ACKNOWLEDGEMENTS
Thanks to chromatic whose TieOut.pm was the basis for capturing output. Also thanks to rjbs for his help cleaning the documention, and pushing me to Sub::Exporter. Thanks to David Wheeler for providing code block support and tests. Thanks to Michael G Schwern for the solution to combining STDOUT and STDERR. COPYRIGHT &; LICENSE Copyright 2005-2008 Shawn Sorichetti, All Rights Reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. perl v5.10.1 2011-04-25 Test::Output(3pm)
All times are GMT -4. The time now is 06:47 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy