awkから科学的表記への変換を避ける

awkから科学的表記への変換を避ける

何百もの列を含むCSVファイルがあります。静的数字から特定の列の値を引いた後、行全体を印刷したいと思います。この列の値は長い浮動小数点数です。減算を実行すると、awkは自動的に結果を科学的な形式に変換します。 printfを使用して標準表現を取得できますが、行全体を取得する必要があり、1行あたりのフィールドが多すぎます。

この自動変換を回避したり、少なくともバイパスする方法はありますか?

答え1

からman awk

置換で数値式を文字列に変換表現そしてsprintf(CONVFMT、式)、しない限り表現ホストで正確な整数で表され、次に変換できます。sprintf("%d", 式)破片() の機能を複製するAWK組み込み関数です。スプリント(3)畳み込みFMT 数値を文字列に内部変換するために使用される組み込み変数で、%.6g明示的な型変換を強制できますexpr ""ひもそしてexpr+0数字

だからあなたは整理することができます畳み込みFMT開始フィールドまたは書式フィールドの変数です。

関連情報