Linuxで2つのデータフィールド/列の位置を変更する方法

Linuxで2つのデータフィールド/列の位置を変更する方法

質問:

次のデータフィールドがあります

zzzzz: 4
afsdf: 5
sdfsd: 3

orコマンドを4: zzzzz使用できるように、2つの列の位置をどのように変更しますか?可能であれば、さらに詳しく知るために、いくつかの方法を紹介してください。awksed

ベストアンサー1

以下は一部です。

awk -F": " '/:/{print $2": "$1}' file
sed 's/\(.*\): *\(.*\)/\2: \1/' file
perl -pne 's/(.+?):\s*(.*)/$2: $1/' file
paste  <(cut -f 2 -d ' ' file) <(cut -f 1 -d ' ' file | sed 's/://')
while read a b; do echo "$b: $a"; done < file | sed 's/: *$//'

おすすめ記事