Sponsored Content
Top Forums Shell Programming and Scripting Moving line up if line starts with + sign. Post 302804587 by hanson44 on Wednesday 8th of May 2013 11:59:33 PM
Old 05-09-2013
Code:
awk 'NR>1 && !/^\+/{print RS}1 END{print RS}' ORS= file1

Should be (using gawk anyway, did not test with other awk versions):
Code:
awk 'NR>1 && !/^\+/{print RS}{print} END{print RS}' ORS= file1

Code:
$ cat test.sh
echo input file:
cat file1
echo
echo original approach did not work:
awk '!/^\+/{ORS=FS}/^\+/{ORS=RS}1' file1
echo
echo
echo scrutinizer approach throws a syntax error:
awk 'NR>1 && !/^\+/{print RS}1 END{print RS}' ORS= file1
echo
echo scrutinizer approach modified a little works:
awk 'NR>1 && !/^\+/{print RS}{print} END{print RS}' ORS= file1
echo
echo yoda suggested change did not help:
awk '!/^\+/{ORS=""}/^\+/{ORS=RS}1' file1

Code:
$ ./test.sh
input file:
Line 1
+ Line 2
Line 3
+ Line 4
+ Line 5
Line 6
+ Line 7
+ Line 8
+ Line 9
Line 10
Line 11

original approach did not work:
Line 1 + Line 2
Line 3 + Line 4
+ Line 5
Line 6 + Line 7
+ Line 8
+ Line 9
Line 10 Line 11

scrutinizer approach throws a syntax error:
awk: cmd. line:1: NR>1 && !/^\+/{print RS}1 END{print RS}
awk: cmd. line:1:                           ^ syntax error

scrutinizer approach modified a little works:
Line 1+ Line 2
Line 3+ Line 4+ Line 5
Line 6+ Line 7+ Line 8+ Line 9
Line 10
Line 11

yoda suggested change did not help:
Line 1+ Line 2
Line 3+ Line 4
+ Line 5
Line 6+ Line 7
+ Line 8
+ Line 9
Line 10Line 11

This User Gave Thanks to hanson44 For This Post:
 

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

moving to a specified line number

Hi Is there any command or a trick that can take me to a specifed line number in unix . Suppose i have a file with 2000 lines and i would like to go to line number 1899 and then print out the contents of the line. regards Hrishy (2 Replies)
Discussion started by: xiamin
2 Replies

2. Shell Programming and Scripting

How to read a line when it starts with spaces

Hi , I use read command to get the input text, When i try to get the line starting with spaces or ending with spaces it automatically truncates the spaces and displays the remaining content. Code i tried (UserInput.sh): #!/bin/bash echo -n "Enter some text > " read text echo "You... (3 Replies)
Discussion started by: PrakashChinna
3 Replies

3. HP-UX

Typing the @ sign creates new line.

Whenever I type the @ sign like for example when using a proxy ftp server, The system forces the cursor to jump to a new line. I know it has something to do with the terminal settings. How can I get this to stop and more importantly, how can I modify my profile to set this up whenever I login? ... (3 Replies)
Discussion started by: ricnetman
3 Replies

4. Shell Programming and Scripting

How to strip '$' sign on the line

echo "dddd$dddd"|sed 's/$//' will return dddd echo "dddd$ddd"|tr -d '$' will return dddd I need to replace it with any other character or just live a blank space instead Thank you! (8 Replies)
Discussion started by: zam
8 Replies

5. Shell Programming and Scripting

Moving items to a new line

Hi, Let's I have the following strings (md5): 07177edf8261d28c6a003e583fcbe38c 0717c0037b3a20fc0f0998e673f228d5 0717d611a5d24374628b98e17fd00977,0717d611a5d24374628b98e17fd00977 07189a18afdae558bb5aadfe602e4a91 0719e97d481c239667f38a3e166bed74 071af3225fe50a1fdbb42c43aac313cc... (4 Replies)
Discussion started by: talfiq
4 Replies

6. Shell Programming and Scripting

Moving a line to the end of the file

I have a file with different directories in it. I would need to move one line within the file to the end of the list. Also not there could be blank line in the middle of it. Example /vol/fs1 /vol/fs2 /vol/fs3 /vol/fs4 /vol/fs5 /vol/fs6 /vol/fs7 So I would need /vol/fs2... (3 Replies)
Discussion started by: bombcan
3 Replies

7. Shell Programming and Scripting

Merge multiple lines to one line when line starts with and ends with

example: comment Now_TB.table column errac is for error messages 1 - first 2 - second 3 -third ; in this example I need to be able to grab the comment as first word and ; as the last word and it might span a few lines. I need it to be put all in one line without line breaks so I can... (4 Replies)
Discussion started by: wambli
4 Replies

8. Shell Programming and Scripting

sed - How to replace right part of equal sign (=) on a line

Hello. Using a bash script , I have a variable name for the file I want to modify FILE_TO_EDIT="/etc/my_config_file"And I have a variable name for the parameter to change PARAMETER="fallback_node" PARAMETER_NEW_VALUE="http://my_server_name.com/new_path" A config file may contain : 1°)... (2 Replies)
Discussion started by: jcdole
2 Replies

9. Homework & Coursework Questions

When I run the script, the cursor starts on the wrong line?

Use and complete the template provided. The entire template must be completed. If you don't, your post may be deleted! 1. The problem statement, all variables and given/known data: It's a shell script using a looping logic, trap, tput, if, while. Most of the scripts in this book aren't written... (2 Replies)
Discussion started by: ckleinholz
2 Replies

10. UNIX for Beginners Questions & Answers

Get an output of lines in pattern 1st line then 10th line then 11th line then 20th line and so on.

Input file: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 (6 Replies)
Discussion started by: Sagar Singh
6 Replies
Geometry::Primitive::Line(3pm)				User Contributed Perl Documentation			    Geometry::Primitive::Line(3pm)

NAME
Geometry::Primitive::Line - A Line DESCRIPTION
Geometry::Primitive::Line represents a straight curve defined by two points. SYNOPSIS
use Geometry::Primitive::Line; my $line = Geometry::Primitive::Line->new(); $line->start($point1); $line->end($point2); ATTRIBUTES
end Set/Get the end point of the line. start Set/Get the start point of the line. METHODS
new Creates a new Geometry::Primitive::Line contains_point Returns true if the supplied point is 'on' the line. Accepts either a point object or an x y pair. grow Does nothing, as I'm not sure how. Patches or hints welcome. is_parallel ($other_line) Returns true if the supplied line is parallel to this one. is_perpendicular ($other_line) Returns true if the supplied line is perpendicular to this one. length Get the length of the line. point_end Get the end point. Provided for Shape role. point_start Get the start point. Provided for Shape role. scale Does nothing at the moment. slope Get the slope of the line. to_string Guess! y_intercept Returns the Y intercept of this line. AUTHOR
Cory Watson <gphat@cpan.org> COPYRIGHT &; LICENSE You can redistribute and/or modify this code under the same terms as Perl itself. perl v5.10.1 2010-01-10 Geometry::Primitive::Line(3pm)
All times are GMT -4. The time now is 12:12 AM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy