【 suspend 】コマンド――シェルを一時停止するLinux基本コマンドTips(323)

本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、シェルを一時停止する「suspend」コマンドです。

» 2019年07月19日 05時00分 公開
[西村めぐみ@IT]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「Linux基本コマンドTips」のインデックス

Linux基本コマンドTips一覧

 本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、シェルを一時停止する「suspend」コマンドです。

suspendコマンドとは?

 「suspend」はシェルを一時停止するコマンドです。他のプロセスから再開シグナル(SIGCONT)を受け取ることで処理を再開します(シグナルについては、Linux再入門第16回を参照)。

 bashの内部コマンド(ビルトインコマンド、シェルコマンド)であるため、「man」コマンドではなく、「help」コマンドで詳細を表示できます。



suspendコマンドの書式

suspend [オプション]

※[ ]は省略可能な引数を示しています。





suspendの主なオプション

オプション 意味
-f ログインシェル上でも強制的に一時停止する


シェルを一時停止する

 「suspend」でシェルを一時停止します。

 [CTRL]+[Z]キーで一時停止した場合、シェルが実行しているジョブを一時停止するのに対し、suspendコマンドはシェルそのものを停止します。

 コマンドラインで誤ってsuspendコマンドを実行してしまうと、シェルが停止するためキー入力ができなくなります。この場合、他のシェルなどから再開シグナル(SIGCONT)を受け取るまでは再開できません。

 コマンドラインでは、シェルから別のシェル呼び出して実行しているときにsuspendを実行することで、元のシェルに制御を戻すことができます。この場合、「fg」コマンドを用いて、suspendで停止していたシェルに戻ります(fgコマンドについては、Linux再入門第15回を参照)。

コマンド実行例

suspend

(現在実行中のシェルを停止する)(画面1


 画面1では、「su」コマンドを使って、root権限で別のシェルを実行しているさなかに、suspendコマンドを実行しました。

画面1 画面1 シェルを停止、再開したところ

 画面2の流れは画面1と同じです。ただし、どのような処理になっているかを調べるために、各シェルで「ps」コマンドを実行しています。

画面2 画面2 suspendコマンドの効果を調べているところ


他の端末からシェルを再開する

 suspendで停止しているシェルを他の端末から再開させるには、「kill」または「killall」コマンドでSIGCONTシグナルを送ります。

コマンド実行例

kill -SIGCONT 再開させたいbashのPID

(指定したPID(プロセスID)に再開シグナルを送信する)

killall -SIGCONT bash

(全てのbashに対して再開シグナルを送信する。停止中のbashは再開し、停止していないbashは何も行わない)


 画面3ではsuspendコメントを実行したために、bashが停止しました。この状態ではキー操作を受け付けません。例えば「fg」と入力して[Enter]キーを押しても、[CTRL]+[C]キーを押してもbashに制御は戻らず、コマンドラインからの操作はできません。

画面3 画面3 コマンドラインからの操作が一切できなくなったところ

 画面4は、suspend実行前後、およびkillコマンド実行後に「ps a」を実行して、bashがどのような状態になっているのかを、順に確認しています。psコマンドの「a」オプションは、端末を持つプロセスを全て表示するという意味です。画面4の3番目の列にある「S」は割り込み可能なスリープ状態を表しています。このため、キー入力待ち状態のbashは「S」表示になります。停止中は「T」表示です。

画面4 画面4 suspendコマンドを実行する前後でbashの状態がどのように変わったのかを調べたところ


筆者紹介

西村 めぐみ(にしむら めぐみ)

元々はDOSユーザーで「DOS版UNIX-like tools」を愛用。ソフトハウスに勤務し生産管理のパッケージソフトウェアの開発およびサポート業務を担当、その後ライターになる。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『Accessではじめるデータベース超入門[改訂2版]』『macOSコマンド入門』など。地方自治体の在宅就業支援事業にてMicrosoft Officeの教材作成およびeラーニング指導を担当。会社などの"PCヘルパー"やピンポイント研修なども行っている。


Copyright © ITmedia, Inc. All Rights Reserved.

スポンサーからのお知らせPR

注目のテーマ

Microsoft & Windows最前線2025
AI for エンジニアリング
ローコード/ノーコード セントラル by @IT - ITエンジニアがビジネスの中心で活躍する組織へ
Cloud Native Central by @IT - スケーラブルな能力を組織に
システム開発ノウハウ 【発注ナビ】PR
あなたにおすすめの記事PR

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。