アプリ版:「スタンプのみでお礼する」機能のリリースについて

MS-DOSからposixでshellを起動して`date`を実行した場合、
「date: Command not found.」エラーになります。
Cシェルのウィンドウで実行した場合は、正常に動作します。DOS(posix)で起動した場合は、エラーになっています。なぜエラーになるのか原因がわからず困っています。
エラーとなる原因を教えていただけないでしょうか。
また、SFUで開発する上で参考となるページなどありましたら教えていただければ幸いです。

Shellの内容は以下のとおりです。

<シェル起動ファイルの内容>
posix /u /c /bin/tcsh -f HOGE.csh

<shell(HOGE.cshファイル)の内容>
# echoで日付を表示
echo "`date +%y/%m/%d` `date +%H:%M:%S`"

<環境>
Windows2003サーバー
SFU3.0

A 回答 (1件)

DOS窓から直接シェルをキックした場合、通常ログイン時に設定される環境変数郡が、まったく設定されないままにシェルが動きます。


端的に原因を言えば、通常あたりまえのようにPATHが通っている/bin等にPATHが通っていない為にdateコマンドがみつからない状態になっていると言う事です。
シェルの使い方にもよるでしょうが、dateコマンドを/bin/dateのようにフルパスで記述するか、シェルの頭でsetenvしてパスを設定してやるか、sourceコマンドで普段起動時に読み込まれている設定を、やはりシェルの頭で読み込んでやるか、どれかの対応が必要でしょう。
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!