On 10/30/18 9:05 AM, Stefano Brivio wrote: > Now that we have an abstraction for columns, it's relatively easy to > selectively display only some of them, and Yoann has a use case for it. > > Patch 1/3 fixes a rendering issue that shows up only when display of > arbitrary columns is disabled. Patch 2/3 implements the relevant option, > and patch 3/3 makes the output more readable when some columns are > disabled. > >
I like the intent, and I have prototyped something similar for 'ip'. A more flexible approach is to use format strings to allow users to customize the output order and whitespace as well. So for ss and your column list (winging it here): netid = %N state = %S recv Q = %Qr send Q = %Qs local address = %Al lport port = %Pl remote address = %Ar remote port = %Pr process data = %p ... then a format string could be: "%S %Qr %Qs %Al:%Pl %Ar:%Pr %p\n" or for csv output: "%S,%Qr,%Qs,%Al,%Pl,%Ar,%Pr,%p\n" I have not had time to look into an implementation for ip. Conceptually - and scanning the kernel's vsprintf code - it does not look that difficult, just time consuming on the frontend with the initial setup.