• 締切済み

hp-uxについて教えてください

お願いします。 指数型で出力されているデータを実数型に 変換する方法、コマンドなどありましたら教えてください。 よろしくお願いします。

みんなの回答

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.3

> 上記、実行した結果以下のようになってしまいます。 あんな簡単なスクリプトが動かなくて、ちょっとドキッとしました。 $1の前は、カンマです。念の為、awk の部分を見やすいように全角で書いておきましょう。 awk ’{printf ”%20.15f”,$1}’ # やっぱり、みずらい…

  • a-kuma
  • ベストアンサー率50% (1122/2211)
回答No.2

多分、awk を使うのが一番簡単。 例えば、一行に一個だけ指数形式の数値だけがあって、それが複数行有るようなファイルを もっているとしたら、 % cat 指数形式のファイル | awk '{printf "%20.15f", $1}' で、標準出力に固定小数点形式(全20桁で、小数点以下が15桁)で出力されます。

chibitotoro
質問者

補足

度々ホントにありがとうございます。 上記、実行した結果以下のようになってしまいます。 $ cat test | awk '{printf "%20.15f".$1}' awk: cmd. line:1: {printf "%20.15f".$1} awk: cmd. line:1: ^ parse error Broken pipe hp-uxのrunacctが出力するfiscrptというファイルを実数形式にしたいのです。 データはすべて指数形式になっています。(私もrunacctについて理解できてないのですが。。。m(_)m

  • ykkw_2001
  • ベストアンサー率26% (267/1014)
回答No.1

私の勘違いかもしれませんので、下記の仮定で、一つでもはずしてたら、パスして下さい。 >hp-ux   って、ヒューレットパッカードのUNIXワークステーションの事ですよね。 で、 >実数型で出力 と言うのは、標準出力(画面とかファイル)にテキストで出力されているわけですよね。 で、chibitotoro さんは、UNIXのターミナル使用方法は、「わかっている」(コマンドは全部知らないけど・・)ですよね。 であるならば、UNIXのコマンドで、sed か、awk を調べてみて下さい。 ただし、今までawk sedを全く使ったことがなく かつ Cコンパイラなら経験あり ならば、Cでフィルタプログラムを作ったほうが、時間的に早そうです。

chibitotoro
質問者

補足

はい、ヒューレットパッカードのUNIXワークステーションですね。 runacctが出力するfiscrptというファイルを変換したいのです。 sedコマンドは使った事があります。 awkついては調べた事はありますが、理解しきれていないです。。。

関連するQ&A