awk and reversing


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting awk and reversing
# 1  
Old 04-01-2007
awk and reversing

Hello

I'm writing script in awk that reverse order the fields of every line in file.
My script have problem with spaces - if there is more spaces between fields
in line of file - my script erase them .
I want my script work like command "tac" - how to change it ?

Code:
#!/bin/sh

file=$1
awk '
 {        
   for(i=NF;i>0;i--)
     printf("%s " , $i); printf("\n")
 } ' $file

# 2  
Old 04-01-2007
Untested, but something like this might work, depending on your version of awk:
Code:
{
   len=length($0)
   for(i=0;i<len;i++) {
        s=substr($0, len - i , 1 )
        printf("%s" , s )
   }
   printf("\n")
}

just as a comparison, this would do the same thing in ruby:
Code:
ruby -pe '$_.reverse!' file


Last edited by reborg; 04-01-2007 at 06:49 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Reversing large data set with awk?

Hello! I have quite a bit of map data that I have to edit. I originally had a DOS script that would reverse x1, y1 coordinates in order to change the direction of a particular segment in a map file. It worked wonderfully and all was well, but my bossman told me that there is a boatload of nodes... (9 Replies)
Discussion started by: Mothra
9 Replies

2. UNIX for Dummies Questions & Answers

Reversing line and word order using awk

Hello, I am new to awk and I was wandering if I could reverse line and word order from a text file using awk. I figured out how to do them both separately, but can't quite figure out how to mix them. Example: Input file: dog cat mouse 1 2 3 I am new to awk Output of the awk program:... (3 Replies)
Discussion started by: blink_w
3 Replies

3. Shell Programming and Scripting

Reversing a line based on column

Hi, I have a file that looks like this (tab seperated): read - DFHJ read1 - IOPE read2 + AAAB read3 + MMMN Basically what i want to do is reverse column 3 if column 2 has a - but leave it if its + so the output would look like this: read - JHFD read1 - EPOI read2 + AAAB... (3 Replies)
Discussion started by: kylle345
3 Replies

4. Shell Programming and Scripting

reversing multiple lines

Hi I want to reverse multiple lines from my file eg of File1 3 4 5 6 7 8 9 a b c d e f g h I am using this code to reverse lines but it can only work with one row awk -F'\t' '{while (NF){printf("%s%s", $(NF--),!NF?"":FS)}}' File1 > File2 I want the file to look like this 9 8 7 6 5 4... (2 Replies)
Discussion started by: phil_heath
2 Replies

5. Shell Programming and Scripting

reversing order of lines in a file

how can i reverse the line order in text files? (but total number of the lines is not constant ) for example i have a file like this: line1 line2 line3 . . lineN i wantto make it like this: lineN . . . line3 (26 Replies)
Discussion started by: gfhgfnhhn
26 Replies

6. Shell Programming and Scripting

Need help reversing this code

ssh servername.com "echo /$APP=$BUSIN >> $URI; echo /$APP/*=$BUSIN >> $URI" Ok for example here i ssh into a example servername.com, and I think what it does some line gets put into the urifile , my question is, how would i go about removing that in a script. in summary, the above code is... (3 Replies)
Discussion started by: new2learn09
3 Replies

7. Shell Programming and Scripting

reversing a line

Hi, I could not find this anywhere and I am wondering if someone knows a quick way of doing this. So heres the problem... I have a row that looks like this (an example): 5 4 3 2 1 What I want to do is reverse it so it looks like this: 1 2 3 4 5 Does anyone know the simple unix... (7 Replies)
Discussion started by: kylle345
7 Replies

8. Shell Programming and Scripting

reading and reversing a string

Hi Everyone....I am new to Unix and BASH programming...I just want to read a string and reverse it and display.....can anyone help me out???? (8 Replies)
Discussion started by: nikhilneela
8 Replies

9. UNIX for Dummies Questions & Answers

Reversing UID's

Is it possible given a uid to determine information about the person with the uid? An example would be simple information regarding what group and the name of the person associated with that uid. It seems there is probably an easy staring me in the face but i cant seem to find it... (3 Replies)
Discussion started by: dreaming1
3 Replies

10. Shell Programming and Scripting

reversing a list

Hi Everyone, I am reading in a list of IDs from a file that is is chronological order. My current code in simplified form looks like this (ksh by the way) IDS=`awk -F\| '{print $1}' inputfile.txt` for i in $IDS do do various things with that ID done ... (8 Replies)
Discussion started by: TioTony
8 Replies
Login or Register to Ask a Question