コマンドラインでawkを使用すると、タブ補完は使用できません。

コマンドラインでawkを使用すると、タブ補完は使用できません。

タブで区切られたファイルを区切るためにawkを使用しようとしています。

awk -F'\t' -v OFS="\t" '{if ($5=="Pattern") print $0}' My_file

タブを使用しないと、オプションを完了できないという問題があります。」-v OFS="\t"". コマンドに"が含まれるたびに"-v OFS="\t"「(唯一のオプションとして、または他のオプションと一緒に)ファイル名にタブ補完機能を使用することはできません。

私が使用するとき:

awk -F'\t' '{if ($5=="Pattern") print $0}' My_file

タブの完成が正常に機能します。

時々、次のコマンドを使用する場合:

awk -v OFS='\t' '{if ($5=="Pattern") print $0}' My_file

エラーが発生します。

bash:一致する ""を探しているときに予期しないEOFが発生しました。

bash:構文エラー:予期しないファイルの終わり

ファイル名を貼り付けると、コマンドは実際には機能しますが、タブ補完では機能しません。

誰かが私が間違っていることを教えてもらえますか?

ありがとうございます!

ベストアンサー1

この試み:

awk 'BEGIN{FS="\t"; OFS="\t"}{if ($5=="Pattern") print $0}' My_file

あなたの質問を理解しても大丈夫です。

おすすめ記事