• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:シェルでreadの文字数)

シェルでreadの文字数制限とは?

このQ&Aのポイント
  • Bシェルでreadを使用する際に文字数の制限があるか疑問です。
  • スクリプトを実行すると、長い文字列が切れてしまいます。
  • 例えば、最後の値の「0.704073409098534720779」は「0.704073409098534」までしか表示されません。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmee
  • ベストアンサー率55% (1857/3366)
回答No.1

少なくとも、手許にあるB-sh系(dash,ash,ksh,bash,zsh)で試したところ、全部0.70~は最後まで出力されましたが。 ( if [ $F1 = "add" ]; then のaddがsetの間違いだとして) もっとも、この程度の変換だったらsedで十分。awkでもperlでもone-lineでできること。 while read なんて書き方は、本当に変数に取り込む必要があるときだけにした方がいいと思います。

すると、全ての回答が全文表示されます。

その他の回答 (2)

  • notnot
  • ベストアンサー率47% (4903/10364)
回答No.3

本当に質問通りのスクリプトでそうなりますか? そうなってしまうスクリプトを自分なりに削除して短くしたつもりが、原因を含んだところを削除してしまった物と思います。 もしくは、test2.log の内容の確認方法を間違っているか。

すると、全ての回答が全文表示されます。
  • ky072
  • ベストアンサー率60% (85/140)
回答No.2

No.1 さんの仰る通り、sed や awk で1行ですね。 % sed '/^set/s/[^ ]*/0/4' test.log > test2.log % awk '/^set/{print $1,$2,$3,0,$5;next}{print}' test.log > test2.log

すると、全ての回答が全文表示されます。

関連するQ&A