How to sort file with certain criteria (bash)?


Login or Register for Dates, Times and to Reply

 
Thread Tools Search this Thread
# 1  
How to sort file with certain criteria (bash)?

I am running a command that is part of a script and this is what I am getting when it is sorted by the command:


command:
Code:
ls /tmp/test/*NDMP*.z

Code:
/tmp/test/CARS-GOLD-NET_CHROMJOB-01-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-01-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-02-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-02-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-03-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-03-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-04-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-04-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-05-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-05-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-06-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-06-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-01-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-1of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-2of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-3of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-4of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP.z

What I am trying to do is get the sort on these files to look like this (see below):
(Right now the EXPOSITION-02 is at the very bottom of the file.)


Code:
/tmp/test/CARS-GOLD-NET_CHROMJOB-01-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-01-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-02-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-02-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-03-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-03-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-04-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-04-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-05-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-05-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-06-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-06-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-01-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-1of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-2of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-3of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-4of4.z

So what is needed is that EXPOSITION-02-XY_NDMP.z is after 01-XY-NDMP.z.
I have tried the sort command but can't find the right pattern to sort it accordingly.
Does anyone have a suggestion?
# 2  
How about
Code:
ls -1 /tmp/test/*CH*NDMP*.z; ls  /tmp/test/*EX*NDMP*.z | sort -t- -k1,3 -k6r
/tmp/test/CARS-GOLD-NET_CHROMJOB-01-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-01-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-02-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-02-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-03-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-03-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-04-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-04-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-05-XZ-ARCHIVE-NDMP.z
/tmp/test/CARS-GOLD-NET_CHROMJOB-05-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-01-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-4of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-3of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-2of4.z
/tmp/test/CARS-GOLD-NET_EXPOSITION-02-XZ-NDMP-1of4.z

This User Gave Thanks to RudiC For This Post:
# 3  
Works perfectly, thanks!
Login or Register for Dates, Times and to Reply

Previous Thread | Next Thread
Thread Tools Search this Thread
Search this Thread:
Advanced Search

Test Your Knowledge in Science: Gadgets
Difficulty: Easy
The communication protocol NFC stands for Near-Field Control.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Insert content from file 1 to file 2 in specific criteria meet

Hi , I'm looking for some code that can copy and paste form file1 to file2 with 2 criterial meet. file1: test "sp-j1" test "sp-j2" test "sp-j3" test "sp-j4" file2: sub Pre_Shorts1 (Status_Code, Message$) global Status !if Message$ <> "" then print... (3 Replies)
Discussion started by: kttan
3 Replies

2. UNIX for Beginners Questions & Answers

Remove lines from File.A based on criteria in File.B

Hello, I have two files of the following form. I would like to remove from File.A where the first three colum matches values in File.B to give the output in File.C File.A 121 54321 PQR CAT 122 765431 ABC DOG 124 98765 ZXY TIGER 125 86432 GEF LION File.B 122 765431 ABC 125 86432 GEF... (4 Replies)
Discussion started by: Gussifinknottle
4 Replies

3. Shell Programming and Scripting

Bash Retrieve Beginning of file name and sort question

I am trying to look through a directory where the file names are like this: stringnumber_string, and I want to see if I can take the first part of the name and sort it by the number. I tried this: for i in *_; do if; then fileNum=${i%_*}; echo $fileNum fi done but it gives me an error.... (13 Replies)
Discussion started by: totoro125
13 Replies

4. Shell Programming and Scripting

Finding the right file with multiple sort criteria

Hello, I have files in a directory with names like, ./f0/84.40_E1200_85.39_E1300_f0_r00_1300-ON-0.25_S7A_v4_47.19.1.out.txt ./f0/84.40_E1200_85.83_E1200_f0_r00_1200-ON-0.25_S7A_v4_47.19.1.out.txt ./f0/84.60_E1100_86.45_E1100_f0_r00_1100-ON-0.25_S7A_v4_47.19.1.out.txt... (5 Replies)
Discussion started by: LMHmedchem
5 Replies

5. Shell Programming and Scripting

Input file is uncolored; I want the output file to be colored on criteria

Hello, I have the following input file: auditing account: 3DTP (3dtp) ERROR: S3 bucket "aws-origin-test1.3dstage.com" has policy statement with public grant: {"Sid":"PublicReadGetObject","Effect":"Allow","Principal":{"AWS":"*"},"Action":,"Resource":} auditing region: eu-west-1 auditing... (5 Replies)
Discussion started by: ramky79
5 Replies

6. Shell Programming and Scripting

How do a distinct from a file using sort uniq in bash?

I have an output file .dat. From this file i have to do a distinct of the ID using the sort uniq command in bash script. How can i do it? i found : sort -u ${FILEOUT_DAT} but i don't think is my solution because the id isn't specified.. is there other solution? (7 Replies)
Discussion started by: punticci
7 Replies

7. Shell Programming and Scripting

Check input file with different criteria

HI Input file.txt ABCDE1 JFHFJFJF3 10 ABCDE2 JFHFJFJF5 20 ABCDE3 JFHFJFJF5 30 ABCDE4 JFHFJFJF6 - ABCDE5 JFHFJFJF6 20 ABCDE6 JFHFJFJF6 90 ABCDE7 JFHFJFJF6 9 ABCDE8 JFHFJFJF6 I want to check third column if data missing or wrong data the echo massage and out from script. 1.... (8 Replies)
Discussion started by: pareshkp
8 Replies

8. Shell Programming and Scripting

bash script to sort a txt file

I am writing a script to write to and a sort txt file. After I sort the file I want to add 2 to each line of the file. My script thus far is #!/bin/bash cat > /ramdisk/home/stux/unsortedints.out COUNT=0 FILE =/ramdisk/home/stux/unsortedints.out for i in {1..100} do NUMBER = $ echo $NUMBER... (3 Replies)
Discussion started by: puttyirc
3 Replies

9. Shell Programming and Scripting

making a list matching certain criteria in bash...

Hello everyone!I am trying to make a mail list(a simple .txt file)in which i put certain records that match specific criteria. Let's say that i have a(sorted by last column file)like this one: 0100567 Bla1 Lala1 100 1234567 Bla2 Lala2 80 8769029 Bla3 Lala3 70 1001007 ... (0 Replies)
Discussion started by: bashuser2
0 Replies

10. Shell Programming and Scripting

Selecting records from file on criteria.

Can I have 2 files as in input to the awk command? Situation is somewhat below, File A contains number & value delimited by a space. File B contains number as a part of a line. I am not supposed to retrieve more than 1 number from a line. If number from file B matches with number from... (7 Replies)
Discussion started by: videsh77
7 Replies

Featured Tech Videos