next up previous
Next: 那些以 "." 開始其檔名的檔案在各種 shell 中的用途為何? Up: 關於各種 shell 的問題 Previous: 要如何設定 shell 的變數呢?

要如何得知是否是在一 interactive shell 中?

在 C shell 類中,看看 $prompt 這個變數便知分曉。

在 Bourne shell 類中,可以看 $PS1 這個變數,不過最好是檢查 $- 這個變 數。假如$- 裡有 i,那就表示是在 interactive shell 中。作法如下:

          case $- in
          *i*)    # do things for interactive shell
                  ;;
          *)      # do things for non-interactive shell
                  ;;
          esac


Tan Koan-Sin
1999-03-02