![]() |
|
|
Googleのunix.com
|
|||||||
| シェルプログラミングとスクリプティング KSH 、 CSH 、 shに、 bashの、はPerl 、 PHPは、削除するsed 、 Awkの、他のシェルスクリプトやシェルスクリプト言語についての質問の投稿はこちら。 |
その他のUNIXおよびLinuxフォーラムトピックは参考にすること
|
||||
| スレッド | スレッドスターター | フォーラム | 返信 | 最後の投稿 |
| ファイル内の特定の行を表示する。 | MaestroRage | UNIXのダミー質問と回答のため | 3 | 2008年2月5日 04:57午後 |
| 検索ファイルの特定の単語を | mevasquez | UNIXのダミー質問と回答のため | 2 | 2007年12月4日 04:31午後 |
| どのようにファイルから特定の行を削除する | bluemoon1 | シェルプログラミングとスクリプティング | 17 | 2007年10月7日 11:40午後 |
| どのようにファイル内の特定の行ですか? | hedgehog001 | UNIXのダミー質問と回答のため | 2 | 2005年8月23日 01:04午前 |
| ファイルから特定の行を抽出 | apalex | UNIXのダミー質問と回答のため | 2 | 2001年5月15日 10:57午前 |
![]() |
|
|
LinkBack | スレッドツール | このスレッドを検索 | スレッドを評価 | 表示モード |
|
|
|
||||
|
ファイル比較から特定の言葉でいくつかの行を無視
こんにちはすべて、
私はこのシナリオを行う必要があるのに役立ちます。私は複数の行を持つ2つのファイルがあります。私はこれらの2つのファイルを比較することではなく、トラン、 Loc 、住所、担当しているような単語の行を無視します。また、行の場合、言葉を信用すると、私は文字の後に" (つまり、トークンしたい文字列[ " )は、ラインおよびその部分を比較する。 ファイルのようになります。 記録1 トラン1050e1f @ [ airbillNbr \u003d 1324576 origLocInfo \u003d Loc 1c29ab2 @ [ locId \u003d 923 状態\u003dフロリダ州 locCntry \u003d米国 郵政\u003d 32817 locNbr \u003d 456 locCurr \u003dカナダドル lglEntity \u003dメール ] destLocInfo \u003d Loc 337838 @ [ locId \u003d 298 状態\u003dフロリダ州 locCntry \u003d米国 郵政\u003d 32845 locNbr \u003d 456 locCurr \u003dカナダドル lglEntity \u003dメール ] 1月8日火曜日00:00:00東側shpDt \u003d 2008 18558d2 @ shprAddrInfo \u003d住所[ acctNbr \u003d 123456789 名\u003d Peytonマニング 会社\u003dジャイアンツ 住所\u003dスポーツネーション 住所\u003d 市\u003dニューヨーク 状態\u003dニューヨーク 国\u003d米国 郵政\u003d 76543 ] 充電19c26f5 @ [ コード\u003d 305 crdtCard \u003dクレジット@ 15eb0a [ creditCardTypeCode \u003d Mから、 creditCardExpDate \u003d土2月28日00:00:00東側2009 ] 任意の手助けは大歓迎です。 ありがとう、 Jak |
|
||||
|
あなたは'はgrep - vを単語'または' nawk ' $ 0を使用すること! 〜 /単語/ 'フィルタファイルは、別のファイルにリダイレクト出力、およびフィルタリングが完了した後にファイルを比較してください。 その言葉は、ファイルfl1トランcomandsを使用します: トランはgrep - vをfl1 > fltr_fl または nawk ' $ 0 ! 〜 /トラン/ ' fl1 > fltr_fl " "私はnawk - Fが[ ' (場合( $ 0 〜 "クレジット" ) (サブ( $ 1 ,"",$ 0 ) ; )印刷) ' fl1トークンを使用します(他の最初の' remuwedする必要があります[ 'の後に、誰か他の人に役立つかもしれないが) 私のスクリプトでフィルタリングのコマンドを入れると、その端にフィルタファイルの差分を実行してください。 またwrdのための世界で成功すると私とのフィルタリングが行: ...すべての単語... ; ..か完了した そのためには、この方法でしょう: コード:
words="Tran Loc Addr Charge"
for wrd im $words ; do
nawk -v chk=#wrd '$0 !~ chk' in_fl >tmp;
cp tmp in_fl;
done
|