私はunix
の特定の列のためのファイルに数値以外のレコードの数を取得したいが含まれています。
私が試してみました:は非数値
awk -F"|" ' $1~ "^[0-9]*$" { print $1 }' File |wc -l
しかし、運を。
ヘルプ。
私はunix
の特定の列のためのファイルに数値以外のレコードの数を取得したいが含まれています。
私が試してみました:は非数値
awk -F"|" ' $1~ "^[0-9]*$" { print $1 }' File |wc -l
しかし、運を。
ヘルプ。
数値をチェックするための唯一の賢明な方法は、数学の比較を行うことです。^[0-9]$
と比較
awk -F"|" '($1=="") || ($1+0 != $1){print $1; cnt++} END{print cnt+0}' File
は、あなたが何を取得している浮動小数点または指数の数字
1列の代わりに、これは多くの列で動作するように一般化できますか?私はそれがちょうど列1を見ていることを見るので、私はカットコマンドを使用して一度に1つの列を得ることができると思うので、おそらくそれは私の質問への1つの答えです。 –
もう1つの拡張機能:空のフィールドを無視する方法:つまり、フィールド区切り文字の間に何も表示されない場合は、OKです。 LHSテストを単に削除するだけで、うまくいきませんでした。($ == "")|| –
はい、複数のフィールドで作業し、空のフィールドを無視するのは簡単です。新しい質問を投稿してください。 –
のために失敗します。コマンドを試しましたか? – Samik
1列目の数値を確認しています。また、出力を別のプログラムにパイプするのではなく、 'awk'を使ってカウントすることもできます。 –
数字以外のものを数えたいのですが、数値として$ 1を見ていますか? –