0

Informatica ジョブの最後に生成された2 つのファイル (.csv) がFile1.csvありFile2.csv、レコードが含まれています。'INVALID'

以下のコマンドを使用してファイル名を検索しています。ファイルの'INVALID'いずれかに'INVALID'レコードがある場合は、その特定のファイルをメールで送信する必要があり、両方に無効なレコードがある場合は、両方のファイルをユーザーにメールで送信する必要があります。

$ grep -il "invalid" File1.csv File2.csv | xargs -I'{}' uuencode {} | mailx -s"files" mymail@gmail.com

2 つのファイルが添付されたメールを受信して​​いますが、レコードはありません。

また、 -a を使用してファイルを添付しようとしました:

$ grep -il "invalid" File1.csv File2.csv | xargs -I'{}' mailx -s"files" -a {} mymail@gmail.com

しかし、上記のコマンドはエラーをスローしています:

mailx: illegal option -- a
Usage: mailx -eiIUdFntBNHvV~ -T FILE -u USER -h hops -r address
             -s SUBJECT -f FILE users
4

1 に答える 1

0

grep のオプションは、あなたが間違っているところだと思います。"l" (小さい L) オプションは、grep man に基づいて、ファイルの内容ではなくファイル名を出力するためのものです。

  -l, --files-with-matches
      Suppress normal output; instead print the  name  of  each  input
      file  from  which  output would normally have been printed.  The
      scanning will stop on the first match.

したがって、最初のコマンドから「-l」を削除するだけで、必要なファイルのコンテンツがメールで送信されると思うので、次のようなコマンドを実行します。

$ grep -il "invalid" File1.csv File2.csv | xargs -I'{}' uuencode {} | mailx -s"files" mymail@gmail.com
于 2012-09-26T21:04:04.693 に答える