Provided by: vnlog_1.26-1_all bug

NAME

       vnl-sort - sorts an vnlog file, preserving the legend

SYNOPSIS

        $ cat a.vnl
        # a b
        AA 11
        bb 12
        CC 13
        dd 14
        dd 123

        Sort lexically by a:
        $ <a.vnl vnl-sort -k a
        # a b
        AA 11
        CC 13
        bb 12
        dd 123
        dd 14

        Sort lexically by a, ignoring case:
        $ <a.vnl vnl-sort -k a --ignore-case
        # a b
        AA 11
        bb 12
        CC 13
        dd 123
        dd 14

        Sort lexically by a, then numerically by b:
        $ <a.vnl vnl-sort -k a -k b.n
        # a b
        AA 11
        CC 13
        bb 12
        dd 14
        dd 123

        Sort lexically by a, then numerically by b in reverse:
        $ <a.vnl vnl-sort -k a -k b.nr
        # a b
        AA 11
        CC 13
        bb 12
        dd 123
        dd 14

        Sort by month and then day:
        $ cat dat.vnl
        # month day
        March 5
        Jan 2
        Feb 1
        March 30
        Jan 21

        $ <dat.vnl vnl-sort -k month.M -k day.n
        # month day
        Jan 2
        Jan 21
        Feb 1
        March 5
        March 30

DESCRIPTION

         Usage: vnl-sort [options] logfile logfile logfile ... < logfile

       This tool sorts given vnlog files in various ways. "vnl-sort" is a wrapper around the GNU coreutils
       "sort" tool. Since this is a wrapper, most commandline options and behaviors of the "sort" tool are
       present; consult the sort(1) manpage for detail. The differences from GNU coreutils "sort" are

       •   The input and output to this tool are vnlog files, complete with a legend

       •   The columns are referenced by name, not index. So instead of saying

             sort -k1

           to sort by the first column, you say

             sort -k time

           to sort by column "time".

       •   The fancy "KEYDEF" spec from "sort" is only partially supported. I only allow us to sort by full
           fields, so the start/stop positions don't make sense. I do support the "OPTS" to change the type of
           sorting in a given particular column. For instance, to sort by month and then by day, do this (see
           example above):

             vnl-sort -k month.M -k day.n

       •   "--files0-from" is not supported due to lack of time. If somebody really needs it, talk to me.

       •   "--output" is not supported due to an uninteresting technical limitation. The output always goes to
           standard out.

       •   "--field-separator" is not supported because vnlog assumes whitespace-separated fields

       •   "--zero-terminated" is not supported because vnlog assumes newline-separated records

       Past that, everything "sort" does is supported, so see that man page for detailed documentation. Note
       that all non-legend comments are stripped out, since it's not obvious where they should end up.

BUGS

       This and the other "vnl-xxx" tools that wrap coreutils are written specifically to work with the Linux
       kernel and the GNU coreutils. None of these have been tested with BSD tools or with non-Linux kernels,
       and I'm sure things don't just work. It's probably not too effortful to get that running, but somebody
       needs to at least bug me for that. Or better yet, send me nice patches :)

SEE ALSO

       sort(1)

REPOSITORY

       https://github.com/dkogan/vnlog/

AUTHOR

       Dima Kogan "<dima@secretsauce.net>"

LICENSE AND COPYRIGHT

       Copyright 2018 Dima Kogan "<dima@secretsauce.net>"

       This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser
       General Public License as published by the Free Software Foundation; either version 2.1 of the License,
       or (at your option) any later version.

                                                   2020-02-04                                        VNL-SORT(1)