コンテンツを含むファイルがあります。
123 OneTwoThree
234 TwoThreeFour
345 ThreeFourFive
このファイルを次のように変換したいと思います。
OneTwoThree 123
TwoThreeFour 234
ThreeFourFive 345
ここで、最初の列項目は位置25で変更する必要があります。元のファイルの2番目の列が25文字を超える場合は、残りの文字はスキップする必要があります。これは、25日以降のすべての文字を削除する必要があることを意味します。
たとえば、上記のサンプル出力ファイルでは、最初の列は1
位置26にあります。
awk、sed、または同様のコマンドラインツールを使用してこれを実行できますか?
ベストアンサー1
何について:
awk '{printf "%-25s %s\n",$2,$1}' file
望むより:
cat file
123 OneTwoThree
234 TwoThreeFour
345 ThreeFourFive
789 abcdefghijklmnopqrstuvwxyz
999 abcdefghijklmnopqrstuvwxyzABC
出力:
awk '{printf "%-25s %s\n",$2,$1}' file
OneTwoThree 123
TwoThreeFour 234
ThreeFourFive 345
abcdefghijklmnopqrstuvwxyz 789
abcdefghijklmnopqrstuvwxyzABC 999