Sponsored Content
Top Forums Shell Programming and Scripting redirect the next line after a word Post 302315195 by ghostdog74 on Monday 11th of May 2009 07:41:04 PM
Old 05-11-2009
Quote:
Originally Posted by vgersh99
nawk 'p&&p--;/capture/{p=1;next}' myFile
the regex will grab "captured" as well.

@OP
Code:
# perl -ne 'if (m/capture(?!d)/){$m=<>;print $m}' file
333.captured
111.done
222.ok

 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Can a shell script pull the first word (or nth word) off each line of a text file?

Greetings. I am struggling with a shell script to make my life simpler, with a number of practical ways in which it could be used. I want to take a standard text file, and pull the 'n'th word from each line such as the first word from a text file. I'm struggling to see how each line can be... (5 Replies)
Discussion started by: tricky
5 Replies

2. UNIX for Dummies Questions & Answers

how to move word by word on command line

Hey All, On commad promt of a shell.. How can we move our cursor word by word. Like Ctrl+A takes to the starting of the command... Any shortcut like that..? Thanks pbsrinivas (1 Reply)
Discussion started by: pbsrinivas
1 Replies

3. Shell Programming and Scripting

Read line by line not word by word

i have this line my,name,is,john stored in a file d.sh and i wish to print the line as string..but im getting word by word...have tried this......... for in $(cat $d.sh); do echo $i done but this is giving me my name is john (6 Replies)
Discussion started by: vadharah
6 Replies

4. Shell Programming and Scripting

Adding a word in front of a word of each line.

Adding a word in front of a word of each line.In that line only one word will be there. pl help:( (4 Replies)
Discussion started by: Ramesh Vellanki
4 Replies

5. UNIX for Dummies Questions & Answers

regular expression for replacing the fist word with a last word in line

I have a File with the below contents File1 I have no prior experience in unix. I have just started to work in unix. My experience in unix is 0. My Total It exp is 3 yrs. I need to replace the first word in each line with the last word for example unix have no prior experience in... (2 Replies)
Discussion started by: kri_swami
2 Replies

6. Shell Programming and Scripting

Print word 1 in line 1 and word 2 in line 2 if it matches a pattern

i have a file in this pattern MATCH1 word1 IMAGE word3 word4 MATCH2 word1 word2 word3 word4 MATCH2 word1 word2 word3 word4 MATCH2 word1 word2 word3 word4 MATCH2 word1 word2 word3 word4 MATCH1 word1 IMAGE word3 word4 MATCH2 word1 word2 word3 word4 MATCH2 word1 word2 word3 word4 MATCH2 word1... (7 Replies)
Discussion started by: bangaram
7 Replies

7. Shell Programming and Scripting

Add new parameters into a line, and redirect the line to other file

How can i add new parameters into a line, and redirect the line to other file? For example: 1.sh name:owner google:richard youtube:student I want a, for example 2.sh with: name:owner:description google:richard:search site youtube:student:video site In the 2.sh, I added a new column:... (7 Replies)
Discussion started by: rafazz
7 Replies

8. Shell Programming and Scripting

tail and redirect until finding a specific word

Hey guys, I'm a new bee to this forum as well as to Unix, just having a requirement which i'm not sure how to write shell script for it.. Here is my requirement This is related to tomcat catalina.out file. Just want to display the content of this file until it finds a word like 'server... (2 Replies)
Discussion started by: new_bee
2 Replies

9. Shell Programming and Scripting

Read a File line by line and split into array word by word

Hi All, Hope you guys had a wonderful weekend I have a scenario where in which I have to read a file line by line and check for few words before redirecting to a file I have searched the forum but,either those answers dint work (perhaps because of my wrong under standing of how IFS... (6 Replies)
Discussion started by: Kingcobra
6 Replies

10. Shell Programming and Scripting

Find word in a line and output in which line the word occurs / no. of times it occurred

I have a file: file.txt, which contains the following data in it. This is a file, my name is Karl, what is this process, karl is karl junior, file is a test file, file's name is file.txt My name is not Karl, my name is Karl Joey What is your name? Do you know your name and... (3 Replies)
Discussion started by: anuragpgtgerman
3 Replies
IO::Capture::Stderr(3pm)				User Contributed Perl Documentation				  IO::Capture::Stderr(3pm)

NAME
"IO::Capture::Stderr" - Capture all output sent to "STDERR" SYNOPSIS
use IO::Capture::Stderr; $capture = IO::Capture::Stderr->new(); $capture->start(); # STDERR Output captured print STDERR "Test Line One "; print STDERR "Test Line Two "; print STDERR "Test Line Three "; $capture->stop(); # STDERR output sent to wherever it was before 'start' # In 'scalar context' returns next line $line = $capture->read; print "$line"; # prints "Test Line One" $line = $capture->read; print "$line"; # prints "Test Line Two" # move line pointer to line 1 $capture->line_pointer(1); $line = $capture->read; print "$line"; # prints "Test Line One" # Find out current line number $current_line_position = $capture->line_pointer; # In 'List Context' return an array(list) @all_lines = $capture->read; # Example 1 - "Using in module tests" # Note: If you don't want to make users install # the IO::Capture module just for your tests, # you can just install in the t/lib directory # of your module and use the lib pragma in # your tests. use lib "t/lib"; use IO::Capture:Stderr; use Test::More; # Create new capture object. Showing FORCE_CAPTURE_WARN being cleared # for example, but 0 is the default, so you don't need to specify # unless you want to set. my $capture = IO::Capture:Stderr->new( {FORCE_CAPTURE_WARN => 0} ); $capture->start # execute with a bad parameter to make sure get # an error. ok( ! $test("Bad Parameter") ); $capture->stop(); DESCRIPTION
The module "IO::Capture::Stderr", is derived from the abstract class "IO::Capture". See IO::Capture. The purpose of the module (as the name suggests) is to capture any output sent to "STDOUT". After the capture is stopped, the STDOUT filehandle will be reset to the previ- ous location. E.g., If previously redirected to a file, when "IO::Capture->stop" is called, output will start going into that file again. Note: This module won't work with the perl function, system(), or any other operation involving a fork(). If you want to capture the output from a system command, it is faster to use open() or back-ticks. my $output = `/usr/sbin/ls -l 2>&1`; METHODS
new o Creates a new capture object. o An object can be reused as needed, so will only need to do one of these. o Be aware, any data previously captured will be discarded if a new capture session is started. start o Start capturing data into the "IO::Capture" Object. o Can not be called on an object that is already capturing. o Can not be called while STDERR tied to an object. o "undef" will be returned on an error. stop o Stop capturing data and point STDERR back to it's previous output location I.e., untie STDERR read o In Scalar Context o Lines are read from the buffer at the position of the "line_pointer", and the pointer is incremented by one. $next_line = $capture->read; o In List Context o The array is returned. The "line_pointer" is not affected. @buffer = $capture->read; o Data lines are returned exactly as they were captured. You may want to use "chomp" on them if you don't want the end of line charac- ter(s) while (my $line = $capture->read) { chomp $line; $cat_line = join '', $cat_line, $line; } line_pointer o Reads or sets the "line_pointer". my $current_line = $capture->line_pointer; $capture->line_pointer(1); ARGUMENTS
Pass any arguments to new() in a single array reference. IO::Capture::Stderr->new( {FORCE_CAPTURE_WARN => 1} ); FORCE_CAPTURE_WARN Normally, IO::Capture::Stderr will capture text from warn() function calls. This is because output from warn() is normally directed to STDERR. If you wish to force IO::Capture::Stderr to grab the text from warn(), set FORCE_CAPTURE_WARN to a 1. Then "IO::Cap- ture::Stderr" will save the handle that $SIG{__WARN__} was set to, redirect it to itself on "start()", and then set $SIG{__WARN__} back after "stop()" is called. SUB-CLASSING Adding Features If you would like to sub-class this module to add a feature (method) or two, here is a couple of easy steps. Also see IO::Capture::Over- view. 1 Give your package a name package MyPackage; 2 Use this "IO::Capture::Stderr" as your base class like this: package MyPackage; use base qw/IO::Capture::Stderr/; 3 Add your new method like this package MyPackage; use base qw/IO::Capture::Stderr/; sub grep { my $self = shift; for $line ( } See Also IO::Capture::Overview IO::Capture IO::Capture::Stdout AUTHORS
Mark Reynolds reynolds@sgi.com Jon Morgan jmorgan@sgi.com COPYRIGHT
Copyright (c) 2003, Mark Reynolds. All Rights Reserved. This module is free software. It may be used, redistributed and/or modified under the same terms as Perl itself. perl v5.8.8 2007-07-30 IO::Capture::Stderr(3pm)
All times are GMT -4. The time now is 11:37 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy