Sed

從最後一列linux中刪除一些字元集

  • August 13, 2018

我想刪除最後一列輸出中連字元“e-”之後的所有內容..

下面是我的輸出的樣子..

# awk '/out: OpenSSL/ { gsub( /[][]|out:/ , "" ) ;  print $1,$2,$3 }' sslcheck.log | column -t

myserver1                         OpenSSL  1.0.1e-fips
myserver2                         OpenSSL  0.9.8e-fips-rhel5

我希望在 char+hyphen(e-).. 之後的最後一列中刪除所有內容。

想要的輸出..

myserver1                         OpenSSL  1.0.1
myserver2                         OpenSSL  0.9.8

使用 awk 子字元串函式從第三列中提取前三個字元。

# awk '/out: OpenSSL/ { gsub( /[][]|out:/ , "" ) ;  print $1,$2,substr($3,0,3)}' sslcheck.log | column -t

引用自:https://serverfault.com/questions/926131