2016-11-22 6 views
0

文字の一部を探すためにawkを実行しようとしています。awkを文字の一部に使用する

この例では、SIFT = T(「T; T; T;」を含む)の行を取得したいとします。 POLD = B; POLH = B; LRT = N; MT = Pは、MA = N

は、私は普通

awk -F'\t' '$1=="T" && $2=="B" && $3=="B" && $4=="N" && $5=="P" && $6=="N" myfile.txt 

しかし、コマンドは、上記の除外します例えば、仕事をするためのawkを使用します "; T; TがT ;."どのように私もこれを含めることができますか?ソリューション `あまりにも明白

+0

以下のようなawkを使用することができますが、'($ 1 == "T" || $ 1 == "; T; T。T")ですか? –

+0

あなたは 'T; .'と' T;;。;;;。; ''を除外したいと言っていますか?より正確にする必要があります。列1のフィールドのいずれかがTである行、または 'T'と' T; T; T; .'などの2行だけの行を一致させたいですか? –

+0

"T; T; T;"最初の列のパターンの1つに過ぎません。そこには "T"を持つ他の多くのパターンがあります。だから、基本的に、私は "T"を持つコラム1から何かを得たいです。それは「T ;; ;;;;。;」とすることができます。または「T; T; T;」などとする。 –

答えて

1

あなたは

$ awk '$1 ~ /T/' file 
SIFT POLD POLH LRT  MT  MA 
T  B  B  N  P  N 
T;.;.;.;.;.  B  B  N  P  N 
T  B  B  N  P  N 
T;T;T;. B  B  N  P;P;P N 
T;.  B  B  N  P;P  . 
+0

"T; T; T;"最初の列のパターンの1つに過ぎません。そこには "T"を持つ他の多くのパターンがあります。だから、基本的に、私は "T"を持つコラム1から何かを得たいです。それは「T ;; ;;;;。;」とすることができます。または「T; T; T;」などとする。 –

+0

@JanShamsani:私の更新を参照してください。 – Inian

+0

はい、これは私が欲しいものです。高槻 –

関連する問題