bash 組み込みコマンド「一時停止」の目的は何ですか?

bash 組み込みコマンド「一時停止」の目的は何ですか?

入力したところ、help suspend次の簡単な説明が出ました。

suspend: suspend [-f]
    Suspend shell execution.

    Suspend the execution of this shell until it receives a SIGCONT signal.
    Unless forced, login shells cannot be suspended.

    Options:
      -f    force the suspend, even if the shell is a login shell

    Exit Status:
    Returns success unless job control is not enabled or an error occurs.

私の理解は次のとおりです。入力するとsuspend端末が停止し、strg + cも固定を解除できません。しかし、他の端末を開いて凍結した端末のPIDを検索してkill -SIGCONT PID-NRSIGCONT信号を入力すると、凍結した端末に信号を送信して凍結を解除して凍結を解除させます。

しかし、端末を一時停止する本当の目的は何ですか?どの日常的なアプリケーションが一般的ですか?人々はこれをシェルに構築するために何を考えていましたか?

ベストアンサー1

別のシェルでシェルを起動している場合は、内部シェルを一時停止できます。su一時的に一般ユーザーに切り替えたい場合は、次のように表示されます。

user$ su
Password: ...
root# do something
root# suspend
user$ do something as the ordinary user again
user$ fg
root# ...

(これを行うと、バックグラウンドで開いている特権シェルを忘れないでください...)

!同様に、他のプログラム(例:のコマンド)からシェルにエスケープしている場合でも、lessそのシェルを停止できます。ただし、子プロセスを起動すると、他の多くのプログラムがこの問題をうまく処理することを期待せず、子プロセスはそれ自体が中断されます。

おすすめ記事