awk変数のパラメータ変更

awk変数のパラメータ変更

Bash スクリプトの新機能です。

データリスト:ファイル名には「0310_Filename」の日付が含まれています。

Hour     AM/PM   Game 1     Game2      Game 3

12:00:00 AM      First Last First Last First Last

私はgrepとawkを使って特定の日時、特定のゲームに関連する名前を見つけることができるbashスクリプトを書こうとしています。 3つの名前をすべて圧縮できますが、ゲームはそうではありません。

これはすべての日付と時刻の名前に適用されます。

#!/bing/bash

cat "$1"_Filename | grep "$2" | grep "$3" 

コマンドライン入力:sh <scriptname> 0310 5:00:00 AM

日付に基づいて正しいファイル名を見つけて、時間、午前/午後の順に並べ替えます。

これにより、時間とリストされた3つの名前がわかります。私がしたいのは、「game1」、「game2」、または「game3」になる可能性がある最終パラメータを追加することです。

awk区切り文字と関連付けるためにスクリプトから変数を生成しようとしましたが、問題は$ 4を使用した内容が出力されることです。

例:

#!/bing/bash

game1="'{print $3, $4}'"

game2="'{print $5, $6}'"

game3="'{print $7, $8}'"

cat "$1"_Filename | grep "$2" | grep "$3" | awk -v a="$'$4'" -F" " 'a'

コマンドライン入力:sh <scriptname> 0310 05:00:00 AM game1

ここで変数が失敗していると感じ、awkでどのように機能するかを完全に理解していません...何が起こるのかは、引数を4番目の変数のスクリプトに渡す必要があり、変数を次のように渡す必要があるということです。印刷する awk 数字の区切り記号を表します。これに意味があることを願って、ガイドラインに感謝します。

ベストアンサー1

おすすめ記事