Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!mips!spool.mu.edu!munnari.oz.au!metro!cs.uow.edu.au!david From: david@cs.uow.edu.au (David E A Wilson) Newsgroups: comp.bugs.sys5 Subject: Re: Bug in sort(1) when using +m.n -o.p and -tc Keywords: sort bug Message-ID: <1991Apr15.034337.5768@cs.uow.edu.au> Date: 15 Apr 91 03:43:37 GMT References: <1991Apr11.031926.19901@cs.uow.edu.au> <15808@smoke.brl.mil> Organization: Dept of Computer Science, Wollongong University Lines: 64 gwyn@smoke.brl.mil (Doug Gwyn) writes: >No, it's just a feature. >>/usr/5bin/sort -t: +1.1 -1.2 +1.0 -1.1 <That should have been > sort -t: +1.1 -1.3 +1.0 -1.2 >as documented and shown in an example in the SVR2 manual entry SORT(1). It looks like the SunOS 4.1.1 manual is in error then: --------------------------------------------------------------------------- Field Specification Options -tc Use c as the word delimiter character; unlike white- space characters, adjacent delimiters indicate word breaks; if : is the delimiter character, :: delimits an empty word. sort-field This is a combination of options that specifies a field, within each line, to sort on. A sort-field specification can take either of the following forms: +sw[cf] +sw -ew[cf] where sw is the number of the starting word (beginning with `0') to include in the field, ew is the number of the word before which to end the field, and cf is a string containing collating flags (without a leading `-'.) When included in a sort-field specification, these flags apply only to the field being specified, and when given, override other collating flags given in separate arguments (which otherwise apply to an entire line). If the -ew option is omitted, the field continues to the end of a line. You can apply a character offset to sw and ew to indi- cate that a field is to start or end a given number of characters within a word, using the notation: `w.c'. A starting position specified in the form: `+w.c' indi- cates the character in position c (beginning with 0 for the first character), within word w (1 and 1.0 are equivalent). An ending position specified in the form: `-w.c' indicates that the field ends at the character just prior to position c (beginning with 0 for the del- imiter just prior to the first character), within word w. If the -b flag is in effect, c is counted from the first non-white-space or non-delimiter character in the field, otherwise, delimiter characters are counted. EXAMPLES Sort, in reverse order, the contents of input-file1 and input-file2, placing the output in output-file and using the first character of the second field as the sort key: sort -r -o output-file +1.0 -1.1 input-file1 input- file2 Sort, in reverse order, the contents of input-file1 and input-file2 using the first non-blank character of the second field as the sort key: sort -r +1.0b -1.1b input-file1 input-file2 --------------------------------------------------------------------------- -- David Wilson Dept Comp Sci, Uni of Wollongong david@cs.uow.edu.au