If you are maintaining the file, and thus have control over it's format, I'd suggest keeping your "source" as one record per 4 line entry like this:
Then you could use a simple sort and awk to generate the real file:
This assumes that there are no vertical bars in any of the four lines. There weren't any in your example, but that might not hold across all of your data.
Output from the above data:
This looks good, except I'm pretty sure that in AHK, the "Send," and whatever comes after it must be on the same line to work -- it's a command syntax. So that may present an obstacle when reformatting the source (which I do have control over, btw).
I suppose a tr that turns the newlines into pipe symbols, like you have above, may work, but any tr I may run would also get rid of the spaces in between these "quatrains" (which is OK for ahk but would make a quick perusal of the resulting sorted list rather a pain) and leave me with a block of data it would take a lot more time to reformat.
I thought of customizing the IFS to just "/n" (newline), but I think that here, too, I'd lose those empty lines in between. So if I were to use this approach, maybe also including the ";" in the temporary IFS might do it?
It occurs to me I could also preserve those newlines by introducing an echo command somewhere, but where to put it?
Thanks for your help so far.
BZT
---------- Post updated at 11:38 ---------- Previous update was at 09:42 ----------
agama -- How did you get the sample data I posted to look like it does in the first CODE block of your reply. I've been trying for over an hour* to do the same with some of my own data , and it's still escaping me. I presume you used awk...?
BZT
*and about 20 minutes making this "quick" [ahem] reply...
Last edited by SilversleevesX; 09-18-2011 at 12:38 PM..
Reason: Wasn't positive about s/t in AHK
hey gurus,
my-build1-abc
my-build10-abc
my-build2-abc
my-build22-abc
my-build3-abc
basically i want to numerically sort the entire lines based on the build number. I dont zero pad the numbers because thats "how it is" ;-)
sort -n won't work because it starts from the beginning.
... (10 Replies)
I have record having 10 fields and each field being printed on a new line, first line cotains name of exchange, 2nd line stock name, third line stock price, etc etc...
now i want to retrieve data only for a particular exchanged and that too only 2nd and 3rd row info...
NSE
RNRL
70
12
1... (1 Reply)
Hi ,,
i have the below file...
D 2342135
B 214236
C argjlksd
V lskjrghaklsr
C slkrgj
B sdg4tsd
E aslkgjlkasg
i want to sort the lines into different files based on the starting letter of the line. so that i have different files for lines starting with a letter.
thanks (1 Reply)
I am trying to sort data within a text document by the information at the end of each line. Please see below for an example:
<Profile_0 Name="Random name 0" Description="This is the description." Category="System" ProfileFlags.DWD="6" ABCD="{FF350E61-4FFF-4600-BFFF-3B27DD4BA746}"/>... (6 Replies)
I have a csv file that I would like to remove duplicate lines based on field 1 and sort. I don't care about any of the other fields but I still wanna keep there data intact. I was thinking I could do something like this but I have no idea how to print the full line with this. Please show any method... (8 Replies)
Hi Folks :)
I have a .txt file with thousands of words. I'm trying to sort the lines in order based on number of words per line.
Example
from:
word
word word word
word word
word word word word
word
word word word
word word
to desired output:
word (2 Replies)
Hi,
Need to sort file based on the number of delimeters in the lines.
cat testfile
/home/oracle/testdb
/home
/home/oracle/testdb/newdb
/home/oracle
Here delimeter is "/"
expected Output:
/home/oracle/testdb/newdb
/home/oracle/testdb
/home/oracle
/home (3 Replies)
I am currently having some problems with my script not sorting my files lexiographically.
The error seem to be localized here where i sort the utt2spk file, which is done like this..
for x in test train; do
for f in text utt2spk; do
sort data/$x/$f -o... (7 Replies)
Hi All,
i want to write a shell script read below file line by line and want to exclude the lines which contains empty value for MOUNTPOINT field.
i am using centos 7 Operating system.
want to read below file.
# cat /tmp/d5
NAME="/dev/sda" TYPE="disk" SIZE="60G" OWNER="root"... (4 Replies)