Visit Our UNIX and Linux User Community


using sed and regex to reverse order???


 
Thread Tools Search this Thread
Top Forums UNIX for Dummies Questions & Answers using sed and regex to reverse order???
# 1  
Old 10-13-2004
Question using sed and regex to reverse order???

so i have been trying to learn how to manipulate text on my own and have gotten stumped...

let's say i have a text file that says (highly simplified):

people ordinary

How would swap the order of the words..

I know i need to use sed and some kind of back reference but cannot make it work for the life of me..

thanks guys,

mary
# 2  
Old 10-13-2004
It's a bit slow, but this'll do it
Code:
#!/bin/sh

while read line
do
  count=`echo "$line" | wc -w`
  while [ "$count" -gt "0" ]
  do
    echo "$line" | awk -vc="$count" '{printf("%s ", $c)}'
    count=`expr $count - 1`
  done
  echo ""
done < input_file

EDIT: I should probably say that this assumes that fields are space or tab separated. You could modify the awk and add a 'BEGIN{ FS="blah" }' if the field seperator is something else.

Cheers
ZB

Last edited by zazzybob; 10-13-2004 at 07:44 AM..
# 3  
Old 10-13-2004
this may be a little faster -
Code:
awk '{ cnt=NF  
        while (cnt > 0){
             printf("%s ", $cnt)
             --cnt
         } printf("\n")
      }' input_file

 

Previous Thread | Next Thread
Test Your Knowledge in Computers #218
Difficulty: Easy
A peer-to-peer network sets all connected computers equal and all connected computers share the same abilities to use resources available on the network.
True or False?

9 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Issues with sorting in reverse order

I have a unix script that outputs a summary file to the mac desktop. The file is called summary.txt I am trying to configure such so that the summary.txt file lists the content contained within such in reverse sort order. I have used sort -r but it does not seem to work. I would be... (8 Replies)
Discussion started by: Braveheart
8 Replies

2. Shell Programming and Scripting

Delete records in reverse order

Hi all, i have dynamic file 'xyz.txt', records always look likes below format ... 0000021 RET 31-MAR-1984 FAP 0000021 DTA 14-JAN-2003 CNV 0000021 DTA 25-MAR-2012 DTA 0000021 DTA 26-MAR-2012 DTA ################################################# 0000021 DTA ... (4 Replies)
Discussion started by: krupasindhu18
4 Replies

3. Shell Programming and Scripting

Sorting strings in reverse order

Hello, I have a large database of words and would like them sorted in reverse order i.e. from the end up. An example will make this clear: I have tried to write a program in Perl which basically takes the string from the end and tries to sort from that end but it does not seem... (5 Replies)
Discussion started by: gimley
5 Replies

4. Shell Programming and Scripting

print in reverse order

Hi, I want to print the item in reverse order such that the output would look like 00 50 50 23 40 22 02 96 Below is the input: 00 05 05 32 04 22 20 69 Video tutorial on how to use code tags in The UNIX and Linux Forums. (5 Replies)
Discussion started by: reignangel2003
5 Replies

5. UNIX for Dummies Questions & Answers

printing fields in reverse order

command/script(apart from awk) to print the fields in reverse order that is last field has to come first and so on and first field has to go last Input store-id date sale ............. ............. ... (3 Replies)
Discussion started by: tsurendra
3 Replies

6. Shell Programming and Scripting

How to get fields in reverse order?

i am having lines like below seperated by "|" (pipe) abc|xyz 123|567 i have to get the above in reverse order xyz|abc 567|123 Pls help (5 Replies)
Discussion started by: suryanarayana
5 Replies

7. Shell Programming and Scripting

cut a field, but with reverse order

Hi Everyone, I have one a.txt: a b 001 c b b 002 c c c, not 002 c The output should be 001 002 002 If i use cut -f 3 -d' ', this does not work on the 3rd line, so i thought is any way to cut the field counting from the end? or any perl thing can do this?:confused: ... (3 Replies)
Discussion started by: jimmy_y
3 Replies

8. UNIX for Dummies Questions & Answers

sort -reverse order

I need to sort the particular column only in reverse order how i can give it.. if i give the -r option the whole file is getting sorted in reverse order. 1st 2nd col 3rd C col 4th col 5th col ------------------------------------------- C... (7 Replies)
Discussion started by: sivakumar.rj
7 Replies

9. Shell Programming and Scripting

sort a file in reverse order

I a file with log entries... I want to sort it so that the last line in the file is first and the first line is last.. eg. Sample file 1 h a f 8 6 After sort should look like 6 8 f a h 1 (11 Replies)
Discussion started by: frustrated1
11 Replies

Featured Tech Videos