Sponsored Content
Top Forums Shell Programming and Scripting Sort alphabetically, then numerically Post 302502968 by 1cor29 on Wednesday 9th of March 2011 10:45:32 AM
Old 03-09-2011
Sort alphabetically, then numerically

Greetings - I'm not necessarily new to bash scripting - I'm probably between beginner and intermediate, but I have something that I just cannot figure out after many attempts to find it. I have a file that is merely a list of many files, with their respective paths, and a branch path (ClearCase) that they live on. For instance, here is an example of this file:

Code:
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/9
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/11
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/10

As you can see, there are 3 instances of a file with 3 different versions depicted. Well, I need it sorted to where the end number is in order.
"sort -n" and "sort" doesn't work. The results are:
Code:
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/10
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/11
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/9

I need it to have the result like this:

Code:
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/9
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/10
/vobs/vob/path/to/where/the/file/is/foo.txt@@/main/int/dev/11

How do you do that??? Smilie
Moderator's Comments:
Mod Comment
Please use code tags when posting data and code samples!

Last edited by vgersh99; 03-09-2011 at 11:46 AM.. Reason: code tags, please!
 

10 More Discussions You Might Find Interesting

1. UNIX for Dummies Questions & Answers

How to sort alphabetically after finding values

I have a list of people in a usage log and need to print the names and phone numbers of people with over 500 logins. I'd also like to display these names alphabetically. I have their total logins set to a variable named total. So far, I have very little in my awk script to do this: FS=":"... (4 Replies)
Discussion started by: doubleminus
4 Replies

2. UNIX for Dummies Questions & Answers

Sort file alphabetically AND numerically

Hi all. I have 2 files like this: f1 A 10 B 80 C 9 f2 A 11 B 700 C 10 What I want is the concatenation of the two files sorted by name (alphabetically) and size (numerically), so the result should be like this: F3 (cat f1 f2 sorted) A 10 A 11 B 80 B 700 (2 Replies)
Discussion started by: mrodrig
2 Replies

3. Shell Programming and Scripting

Numerically sort problem for a long list of file name

I got a long list of file name. My input: data_1.txt data_2.txt data_3.txt data_10.txt data_21.txt data_12.txt data_4.txt My desired output: data_1.txt data_2.txt data_3.txt data_4.txt data_10.txt data_12.txt data_21.txt Does anybody got idea how to archive it? (11 Replies)
Discussion started by: patrick87
11 Replies

4. Shell Programming and Scripting

Sort by numbers, then alphabetically

Hey guys, I have a file that contains the following: 366 K 364 Q 12 UB 7 INC. P 4 Law 2 LAMB 2 High 1 QEG 1 OF 1 LC 1 B As you can see, it's already sorted by numerical order, how do I sort it again, breaking the ties by using the alphabetical order of the second column, but... (2 Replies)
Discussion started by: Andrew9191
2 Replies

5. UNIX for Dummies Questions & Answers

Sort 2 columns numerically

Hi, A basic query. In the example file below, I want to sort by column 1 and then by column 2 numerically. I have tried sort -k2n,1 file1 but while this sorts the columns in the correct order, it does not sort column 2 numerically. Any help would be much appreciated. Also, if you have time to... (3 Replies)
Discussion started by: auburn
3 Replies

6. Shell Programming and Scripting

Sort numerically a non numerical

Hello, I have this sample data: 01 * * * * 01 * * * * 01 * * * * 01 * * * * 01 0 * * * 01 0 * * * 01 0 * * * 01 0 * * * 02 * * * 0 02 * * * 0 02 * * * 6 02 * * * 6 02 0 * * 1 02 0 * * 1 02 0 * * 2 02 0 * * 2 02 0 * * 3 (3 Replies)
Discussion started by: gio001
3 Replies

7. UNIX for Dummies Questions & Answers

[Solved] Reverse the order of a list of file names (but not sort them alphabetically or numerically)

Hello all, I have a list of file names in a text document where each file name consists of 4 letters and 3 numbers (for example MACR119). There are 48 file names in the document (they are not in alphabetical or numerical order). I would like to reorder the list of names so that the 48th name is... (3 Replies)
Discussion started by: MDeBiasse
3 Replies

8. Shell Programming and Scripting

Using awk to sort a file alphabetically

I have a problem with my homework I need to create a shell script using #!bin/awk -f the script will output the file in an alphabetical order only words and after the word is : after that a space then , then it will be numbered each character by which line its been for example CB 92A A... (1 Reply)
Discussion started by: collapse
1 Replies

9. UNIX for Dummies Questions & Answers

Sort alphabetically starting from specified letter

Hi. I'm trying to sort a list of items in a file alphabetically but starting from the letter 'X'. For instance if I had the following file; test.txt Z A T W Y B S X I would like the output to look like; X Y (8 Replies)
Discussion started by: mmab
8 Replies

10. UNIX for Beginners Questions & Answers

How to sort files in directory numerically?

Trying to sort a bunch of files numerically but can't seem to get the command just right. This is in a IBM AIX machine. I have a directory that has... backup.bk1 backup.bk100 backup.bk2 backup.bk200 backup.bk3 backup.bk300 There are a lot more files but this is shortened for the... (5 Replies)
Discussion started by: c3rb3rus
5 Replies
SVN_DIFF(3)								 1							       SVN_DIFF(3)

svn_diff - Recursively diffs two paths

SYNOPSIS
array svn_diff (string $path1, int $rev1, string $path2, int $rev2) DESCRIPTION
Recursively diffs two paths, $path1 and $path2. Note This is not a general-purpose diff utility. Only local files that are versioned may be diffed: other files will fail. PARAMETERS
o $path1 - First path to diff. This can be a URL to a file/directory in an SVN repository or a local file/directory path. Note Relative paths will be resolved as if the current working directory was the one that contains the PHP binary. To use the calling script's working directory, use realpath(3) or dirname(__FILE__). Warning If a local file path has only backslashes and no forward slashes, this extension will fail to find the path. Always replace all backslashes with forward slashes when using this function. o $rev1 - First path's revision number. Use SVN_REVISION_HEAD to specify the most recent revision. o $path2 - Second path to diff. See $path1 for description. o $rev2 - Second path's revision number. See $rev1 for description. RETURN VALUES
Returns an array-list consisting of two streams: the first is the diff output and the second contains error stream output. The streams can be read using fread(3). Returns FALSE or NULL on error. The diff output will, by default, be in the form of Subversion's custom unified diff format, but an external diff engine may be used depending on Subversion's configuration. NOTES
Warning This function is EXPERIMENTAL. The behaviour of this function, its name, and surrounding documentation may change without notice in a future release of PHP. This function should be used at your own risk. EXAMPLES
Example #1 Basic example This example demonstrates the basic usage of this function, and the retrieval of contents from the stream: <?php list($diff, $errors) = svn_diff( 'http://www.example.com/svnroot/trunk/foo', SVN_REVISION_HEAD, 'http://www.example.com/svnroot/branches/dev/foo', SVN_REVISION_HEAD ); if (!$diff) exit; $contents = ''; while (!feof($diff)) { $contents .= fread($diff, 8192); } fclose($diff); fclose($errors); var_dump($contents); ?> The above example will output: Index: http://www.example.com/svnroot/trunk/foo =================================================================== --- http://www.example.com/svnroot/trunk/foo (.../foo) (revision 23) +++ http://www.example.com/svnroot/branches/dev/foo (.../foo) (revision 27) // further diff output Example #2 Diffing two revisions of a repository path This example implements a wrapper function that allows a user to easily diff two revisions of the same item using an external repository path (the default syntax is somewhat verbose): <?php function svn_diff_same_item($path, $rev1, $rev2) { return svn_diff($path, $rev1, $path, $rev2); } ?> Example #3 Portably diffing two local files This example implements a wrapper function that portably diffs two local files, compensating for the realpath(3) fix and the back- slashes bug: <?php function svn_diff_local($path1, $rev1, $path2, $rev2) { $path1 = str_replace('\', '/', realpath($path1)); $path2 = str_replace('\', '/', realpath($path2)); return svn_diff($path1, $rev1, $path2, $rev2); } ?> SEE ALSO
SVN documentation on svn diff. PHP Documentation Group SVN_DIFF(3)
All times are GMT -4. The time now is 04:18 PM.
Unix & Linux Forums Content Copyright 1993-2022. All Rights Reserved.
Privacy Policy