Linuxコマンド.NETLinuxコマンド.NETLinuxコマンドを中心にIT技術関係の情報を発信します。Linuxコマンドについてはできるだけ実行例と実行結果を紹介したいと思います。Linuxコマンドtrapコマンドはプロセスがシグナルを受信したときの動作を設定できるコマンドになります。シグナルは、Ctrl+cによる割込みを行ったとき(SIGINT)や停止しているプロセスが再開したとき(SIGCONT)の様々な条件によってプロセスにシグナルが送られます。プロセスが特定のシグナルを受信したときに動作する処理はシグナルごとに決められています。trapコマンドはその動作をなしにしたり、別の処理としてコマンドや関数を指定してシグナルが送られたときにその処理を行うことができます。[sigspec]...arg:コマンドや関数sigspec:シグナル名またはシグナル番号trapコマンドの利用例シグナルの動作を変更trapコマンドはコマンドまたは関数とシグナルを指定することでシグナルが発生したときの動作を変更できます。SIGKILLのシグナルについては指定しても意味がありません。コマンド例ではCtrl+cによる割込みでのプログラムの終了の動作をechoコマンドの動作に変更しています。test.sh$シグナルの指定について、始めの'SIG'という文字を省略できます。INTで指定できます。trapコマンドの-lオプション等で確認できるシグナル番号でも指定できます。SIGINTの場合は2になります。2Ctrl+cを利用しないプログラムの処理の終了については、Ctrl+zによるプロセスの停止でした後にkillコマンドを用いて処理を終了できます。プロセスにシグナルを送信するkillコマンドはプロセスにデフォルトとしてTERMシグナルを送信し、そのプロセスを終了できます。14:34また、第一引数に空の文字列を入れることでそのシグナルの動作は何も処理を行いません。test2.sh$trapコマンドの設定を確認(-pオプション)-pオプションを用いるとそれぞれのシグナルについて、trapコマンドの現在の設定を確認することができます。引数にシグナルを指定することでそのシグナルについての設定を確認することができます。SIGINT引数なしでtrapコマンドを使用した場合でもtrapコマンドの現在の設定を確認できます。変更されているシグナルの動作をデフォルトの動作に戻す方法はいくつかあります。一つは第一引数に'-'を指定する方法になります。SIGINTのように指定します。SIGTTOU他にもtrapコマンドでシグナルを一つのみを指定するとそのシグナルはデフォルトの動作になります。SIGINTのように指定します。SIGTTOUまた、シグナル番号のみを列挙してもデフォルトの動作にすることができます。15のように指定します。2はSIGINTを、15はSIGTERMのシグナル番号になります。SIGTTOUシグナルの一覧を表示(-lオプション)-lオプションを用いることで、シグナル名とシグナル番号を確認することができます。SIGRTMAXシグナルについてそれぞれのシグナルの処理としてデフォルトのアクションがそれぞれあります。停止中のプロセスを再開それぞれのシグナルがどのようなときに送信されるかやデフォルトの動作はどのような処理が行われるかはそれぞれ決められています。定義されているシグナルについては以下の表のようになります。signalで確認することができます。コメントをキャンセルメールアドレスが公開されることはありません。*次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。Linuxコマンド.NET.。