2011-06-06 11 views
3

私はawkを使用しています。この場合、$ 24には単語3:2-が含まれているかどうかを調べる必要があります(sedコマンドの場合)変数にはより多くの文字やスペースを含めることができます。\ n ....... for ex。部分文字列がawkの変数にあるかどうかを調べるには

$24 == "3:2" {print "s/(inter =).*/\\1\"" "3:2_pulldown" "\"/" >> NR } 

私の上記の行には存在しますが、このような文字列は決して見つかりません。

私はコマンドで私を助けてくださいできますか?

答えて

4

あなたは "3:2" を探しているなら内$ 24あなたは$24 ~ /3:2/またはindex($24, "3:2") > 0

は、なぜあなたはsedスクリプトを生成するためにawkのを使用していたいですか?

更新

-vオプションを使用して、awkのにシェルから変数を渡すために:

val="3:2" # or however you determine this value 
awk -v v="$val" '$24 ~ v {print}' 
+0

私はそれを条件にそのまま置くことはできません - どうすればいいのですか?$ 24〜/ 3:2/ – Shira

+0

インデックスが正常に機能しました! thx私はそれをしているcuze私はテーブルを持っている私は行ごとに行ごとにしたい - 私はファイルを作成する必要があります - sedを使用してテーブルに表示される単語をいくつかの単語を置き換えるにはあなたの質問に答えますか? – Shira

1
awk '$24~/3:2/' file_name 

これは "3:2" のserachれるフィールド24

関連する問題