使用Bash删除文本文件中的列?

Hom*_*dev 4 unix linux bash

我有一个写一个脚本,从手指的输出中删除空闲列.

>finger
Login    Name                 TTY  Idle  Login  Time   Office  Phone
Billy    Billy Howard        *con  6:55  Fri    19:03
Billy    Billy Howard         s00     5  Fri    19:11
Billy    Billy Howard         s00        Sat    00:27
Run Code Online (Sandbox Code Playgroud)

我尝试用tr删除多余的空格,然后使用带有空格分隔符的cut来删除列,但由于空闲没有值,我有时会得到错误的值,因为tr分隔空格是空闲时间应该是......有谁知道如何删除空闲列?

pot*_*ong 7

这可能对你有用:

finger |  sed 's/\(.\{35\}\)...../\1/'
Run Code Online (Sandbox Code Playgroud)

或这个:

finger |  cut --complement -c36-40 
Run Code Online (Sandbox Code Playgroud)