こんにちは私は、ファイルから特定の情報を検索して印刷するためのスクリプトを作ろうとしています。私の場合はこれです:私はid|lastname|firstname|birthday|
の形式のファイルを持っています。私はスクリプトを呼び出して、日付引数とファイルを与えて、私が与えた日付の後に生まれたすべての "人"を見せるようにしたい。 私はあなたに私のコードをお見せしましょう:awkシェルで日付を比較する
#!/bin/bash
case $1 in
--born-since)
d=($2 +%F); # this one puts the date I've given into the variable d
grep -vE '^#' $4 | awk -F "|" ' $4 >= $d '
;;
esac
私はの形でこのスクリプトを呼び出します。私はそれが何をしたいのか
./script --born-since <date> -f <file>
ポイントをやっていないです。私は間違った結果を印刷します。 たとえば、日付が4つのファイル(1989-12-03,1984-02-18,1988-10-14,1980-02-02)では、1985-05-13の日付を指定すると、 1984年2月18日の日付は間違っています。 おそらく、日付ではなく、何かを比較しているでしょう。何かアドバイス ?単一awkの処理により
ええ私の悪いが、それは間違っている、それは別のエントリからあまりにも多くの異なった結果ですので、私は –
はいくつかの入力ラインは、すべての意志投稿の編集、少し混乱しましたフィールド – RomanPerekhrest