On Thu, 1 Nov 2018 15:18:03 -0600 David Ahern <dsah...@gmail.com> wrote:
> On 11/1/18 3:06 PM, Jakub Kicinski wrote: > > On Wed, 31 Oct 2018 20:48:05 -0600, David Ahern wrote: > >>> spacing with a special character in the format string, that is: > >>> > >>> "%S.%Qr.%Qs %Al:%Pl %Ar:%Pr %p\n" > >>> > >>> would mean "align everything to the right, distribute remaining > >>> whitespace between %S, %Qr and %Qs". But it looks rather complicated > >>> at a glance. > >>> > >> > >> My concern here is that once this goes in for 1 command, the others in > >> iproute2 need to follow suit - meaning same syntax style for all > >> commands. Given that I'd prefer we get a reasonable consensus on syntax > >> that will work across commands -- ss, ip, tc. If it is as simple as > >> column names with a fixed order, that is fine but just give proper > >> consideration given the impact. > > > > FWIW I just started piping iproute2 commands to jq. Example: > > > > tc -s -j qdisc show dev em1 | \ > > jq -r '.[] | > > [.kind,.parent,.handle,.offloaded,.bytes,.packets,.drops,.overlimits,.requeues,.backlog,.qlen,.marked] > > | @tsv' > > > > JSONification would probably be quite an undertaking for ss :( > > > > Right, that is used in some of the scripts under > tools/testing/selftests. I would put that in the 'heavyweight solution' > category. > > A number of key commands offer the capability to control the output via > command line argument (e.g., ps, perf script). Given the amount of data > iproute2 commands throw at a user by default, it would be a good > usability feature to allow a user to customize the output without having > to pipe it into other commands. I would rather see ss grow json support than having to make the output formatting of every iproute2 command grow a new format management. The jq tool looks cool, and I can see how someone could easily have a bunch of mini-scripts to do what they want.