How to sort by complex algorithm


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting How to sort by complex algorithm
# 8  
Old 07-18-2012
Many, many thanks.
I have a last question :
In real case, I will compare "1:m" with input line begining with "m" ( not equal to "m")
how can I do it ?
This is my last question and thank you very much
# 9  
Old 07-18-2012
Quote:
Originally Posted by mlaiti
Many, many thanks.
I have a last question :
In real case, I will compare "1:m" with input line begining with "m" ( not equal to "m")
how can I do it ?
This is my last question and thank you very much
try this..

Code:
# liste_order="1:m 2:a 3:h 4:x" ; echo "$liste_order">liste_order
# awk 'NR==FNR{num=gsub(FS,"");a[$0]=num;next}{for(i=1;i<=NF;i++)for(j in a)if($i~j){sub(":.","",$i);for(s=1;s<=a[j];s++)ss=ss FS;print ss$i":"j;ss=""}}' liste liste_order
  1:m
  2:a
  3:h
  4:x

regards
ygemici
# 10  
Old 07-18-2012
Quote:
Originally Posted by mlaiti
Many, many thanks.
I have a last question :
In real case, I will compare "1:m" with input line begining with "m" ( not equal to "m")
how can I do it ?
This is my last question and thank you very much
Code:
export liste_order='1:m 2:a 3:h 4:x'
./command.sh | 
  perl -lne'BEGIN {
    %liste_order = reverse @{ [split /[\s+:]/, $ENV{liste_order}] };
    }
    push @data, [substr($_, 0, 1), $_];
    print join $/, map $data[$_]->[1], sort { 
      $liste_order{$data[$a]->[0]} <=> $liste_order{$data[$b]->[0]} 
        } 0..$#data 
          if eof
    '

Or this (it should be less efficient):

Code:
export liste_order='1:m 2:a 3:h 4:x'
./command.sh | 
  perl -lne'BEGIN {
    %liste_order = reverse @{ [split /[\s+:]/, $ENV{liste_order}] };
    }
    push @data, $_;
    print join $/, map $data[$_], sort { 
      $liste_order{substr($data[$a], 0, 1)} <=> $liste_order{substr($data[$b], 0, 1)} 
        } 0..$#data 
          if eof
    '

This User Gave Thanks to radoulov For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Masking algorithm

I have a requirement of masking few specific fields in the UNIX file. The details are as following- File is fixed length file with each record of 250 charater length. 2 fields needs to be masked – the positions are 21:30 and 110:120 The character by character making needs to be done which... (5 Replies)
Discussion started by: n78298
5 Replies

2. Programming

Please help me to develop algorithm

Hi guys , in my study book from which I re-learn C is task to generate all possible characters combination from numbers entered by the user. I know this algorithm must use combinatorics to calculate all permutations. Problem is how to implement algortihm. // This program reads the four numbers... (0 Replies)
Discussion started by: solaris_user
0 Replies

3. UNIX for Dummies Questions & Answers

Sort directory with complex numeric file names

I have a directory with a large number (1000s) of files and I need to produce a file listing all the files in the directory ordered "properly" (properly will be explained shortly). The files have the following naming pattern: bul_13_5_228_b.txt bul_1_3_57.txt bul_13_6_229.txt... (2 Replies)
Discussion started by: fdsayre
2 Replies

4. Shell Programming and Scripting

Sort complex data

Hi, Can someone here help sorting the following data in numeric order? INPUT: FIRST abc(3) def(13) fgh(1) ijk(6) abc(2) SECOND dfe(10) abc(4) hij(19) tlm(1) hij(1) hub(10) abc(1) fed(3) OTHERS hij(10) mok(4) bub(19) hij(1) abc(2) abc(15) abc(1) hij(3) OUTPUT: FIRST def(13) ijk(6)... (12 Replies)
Discussion started by: need_help
12 Replies

5. Shell Programming and Scripting

Figure out complex sort

This is an extension to a question that was earlier posted on this forum: I have task in which I need to pickup a set of files from a directory depending on the following criteria: Every month 6 files are expected to arrive at /test. The files come with date timestamp and the latest file set... (7 Replies)
Discussion started by: w020637
7 Replies

6. UNIX for Advanced & Expert Users

Algorithm In Pseudocode

A) produce an algorithm in pseudocode and a flowchart that gets n from the user and calculate their sum. B) Write an algorithm in pseudocode and a flowchart that gets number x from he user and calculates x5 ( X to the power of %5). Calculate by using multiplication. ... (1 Reply)
Discussion started by: delsega
1 Replies

7. Shell Programming and Scripting

algorithm

PID USERNAME SIZE RSS STATE PRI NICE TIME CPU PROCESS/NLWP 21444 tomusr 213M 61M sleep 29 10 1:20:46 0.1% java/43 21249 root 93M 44M sleep 29 10 1:07:19 0.2% java/56 is there anyway i can use a command to get the total of the SIZE? 306M (Derive from... (5 Replies)
Discussion started by: filthymonk
5 Replies

8. Programming

FTP's algorithm

what algorithm a FTP application uses i mean whn implemented in socket programming..if you could give a little decription (1 Reply)
Discussion started by: toughguy2handle
1 Replies

9. Programming

Algorithm problem

Looking for an algorithm to compute the number of days between two given dates I came across a professor's C program located here: http://cr.yp.to/2001-275/struct1.c I was wondering if anyone could tell me where the value 678882 in the line int d = dateday - 678882; comes from and also the... (1 Reply)
Discussion started by: williamf
1 Replies

10. Programming

Feedback algorithm

Hi I search an exemple of scheduling Feedback algorithm, or help about how to create one. Thanks (0 Replies)
Discussion started by: messier79
0 Replies
Login or Register to Ask a Question