コマンド出力から重要でない文字を削除する

コマンド出力から重要でない文字を削除する

私のLinuxシステムのversionコマンドは、次の出力を示しています。

version


Red.Hat.OS. release..........5.5
APP.Release.............4.2.0.0-02

中間を取り除く方法」"ドット文字をパラメータから削除せずに、次のように表示します。

 version | .......


 Red.Hat.OS. release          5.5
 APP.Release version         4.2.0.0-02
  • パラメーターの説明文字の間には1つのドット文字しかありません。

答え1

  • > 1の最初の項目をTABに置き換えます.sed 's/\.\.\+/\t/'
  • .> 1のすべての項目をTABに置き換えます。sed 's/\.\.\+/\t/g'/awk -F"[.][.]+" -vOFS="\t" '($1=$1)||1'
  • .> 1の後に数字が続く最初の項目をTABに置き換えます。sed 's/\.\.\+\([[:digit:]]\)/\t\1/'
  • .> 1の後に数字が続くすべての項目をTAB:sed 's/\.\.\+\([[:digit:]]\)/\t\1/g'/に置き換えます。gawk -vRS="[.][.]+[[:digit:]]" '(ORS=(RT?"\t"substr(RT,length(RT)):""))||1'

これらのコマンドはすべて、与えられた入力に対して希望の出力を返します。

説明や調整を依頼してください。

関連情報