• ベストアンサー

シェルスクリプトで$RANDOMの値が表示できません

#!/bin/sh DATA=$RANDOM echo $DATA としたとき,何も出力されないでスクリプトが終了してしまいます.bashモードでコンソールから echo $RANDOM とやれば乱数は表示されます. どのようにすれば表示させることができるのでしょうか?

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

  • ベストアンサー
回答No.3

shebangを #!/bin/bash に変えてみるとどうなりますか?<=補足要求1 $ ls -l /bin/sh の結果はどうなりますか? <=補足要求2 fedora5とvine3.2で $ ls -l /bin/sh と打ったら両方の場合とも lrwxrwxrwx 1 root root 日付 /bin/sh -> bash と表示されました。 #2さんと同じく質問欄に書かれているスクリプトでちゃんと表示されています。 なので/bin/shが変なところにシンボリックリンクされているのではないかと思うんですが???

jpir
質問者

補足

umasikajiroさん回答ありがとうございます 補足要求1: bashに変更して試してみたところ無事動かすことができました. 補足要求2: -r-xr-xr-x 4 root root 95316 Nov 6 2002 /bin/sh* となりました.使用しているOSはsolaris 8です 使用しているsolasis 8ではshがbashにシンボリックリンクされていなかったようです.

その他の回答 (3)

回答No.4

>使用しているsolasis 8では 「Solaris系OS」のカテゴリで質問しろよw。

  • mac_res
  • ベストアンサー率36% (568/1571)
回答No.2

$ uname -a Linux www 2.6.12-1-686 #1 Tue Sep 27 12:52:50 JST 2005 i686 GNU/Linux ですが、件のスクリプトをそのままCopy & Pasteしてtest.shとし、 chmod +x test.sh ./test.sh で正しく表示されています。 お使いのシステムの詳細を教えてください。

  • sanaqa
  • ベストアンサー率30% (13/42)
回答No.1

こんにちわ。 #!/bin/sh DATA=$RANDOM echo $DATA を #!/bin/sh $DATA=$RANDOM echo $DATA にしたらできませんかね? うろ覚えなので、間違ってたらごめんなさい。

関連するQ&A