-1
私は2つのファイルを持っています。ファイル1とファイル2の内容は以下の通りです。私はファイル1に対してファイル2の値を見つけたいと思っています。grepを使わずに別のファイルの値を検索するには?
私はクエリの下にあるが、わかりません。
問合せ:
cat file1 | awk -F ',' 'BEGIN{while(getline<"file2"){OFS=",";a[$2]=$1","$2","$3}} {print $0,a[$1]}' >> Final
はFile1
173
149
133
162
File2の
140, dog
145, cat
149, rat
133, frog
160, lion
162, total
ご注意:ファイル2のサイズが非常に大きいように、通常のgrepは、多くの時間を要します。
をgrepのパターンマッチングを行いながら、レコードawkは絶対マッチングを作るだけのために。あなたはawkパターンマッチング(〜/パターン/)を使用しない限り、grepキーとawkでは一致しません。 –
@GeorgeVasiliou私はs/absolute/string /とs/pattern/regexp /でなければなりません。非常にあいまいなので、 "パターン"という言葉は決して使用しないでください。そのときの "文字列"または "正規表現"を必ず使用してください。そして明らかにするためには、一般的なawkについてではなく、ユーザ固有の投稿されたスクリプトについて話しています。 Vaibhav - getlineの使用を検討しているなら、まずhttp://awk.freeshell.org/AllAboutGetlineで議論されたすべての注意点を読み、完全に理解してください。 –
@GeorgeVasiliou [OK]を、私はhttp://unix.stackexchange.com/a/352304/133219でその質問へのawkソリューションを掲載しました。 –