Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
この章ではシェルの概要及びシェルの基本機能について学習します。
ユーザーが入力したコマンドは、まずシェル(shell)というプログラムに渡されます。シェルは入力されたコマンドを解釈し、カーネルに実行を依頼します。つまりシェルはユーザーとUNIX/Linuxシステムの通訳のような役割を果たしています。ここまで...
シェルにはいくつかの種類があります。代表的なものとして標準シェル(sh)、Cシェル(csh)やbashがあります。各シェルともユーザーが入力したコマンドを解釈する機能を持ちますが、一部の操作には違いがあります。また、シェルの機能を活用することで...
今回は、シェルの基本的な機能として、メタキャラクタ、リダイレクト、パイプライン、順次処理、同時並行処理、プロセス管理について学習します。
メタキャラクタとは、ファイル名を表す特別な意味を持った記号です。メタキャラクタを含むファイル名は、該当するファイル名に置き換えられるため、複数のファイル名や長い名前のファイル名を入力する際に役立ちます。*は任意の文字列を表し、?は任意の1文字を...
UNIX/Linuxの多くのコマンドは、通常、キーボード(標準入力)から何らかの入力を受け取り、それを処理し、結果をディスプレイ(標準出力)に出力します。シェルの機能を用いることで入出力を切り替えることができます。これをリダイレクトと呼びます。...
リダイレクトは、コマンドと入力または出力先ファイルの間に、入出力の切り替えを表す「>」(大なり)や「<」(小なり)などを指定して表します。上記の実行結果では、出力先の変更を表す「>」を利用して、lsコマンドの出力結果をdirlistファイルに保...
パイプラインを用いると、コマンドの出力結果を直接次のコマンドの入力として渡すことができます。複数のコマンドを組み合わせて実行結果を得たい場合に利用します。パイプラインは「|」(バーティカルバー)で表し、コマンドとコマンドの間に指定します。パイプ...
コマンドは改行を区切りとして単一で入力することができますが、「;」(セミコロン)でコマンドを区切ることで、1行に複数のコマンドを入力することができます。1行に書かれたコマンドは先頭から順番に処理をします。これを「順次処理」と呼びます。
UNIX/Linuxシステムでは実行中のコマンドをプロセスという単位で呼びます。通常のコマンド実行ではプロセスは、前のプロセスが終了してから次のプロセスが実行されますが、コマンドの最後に「&」(アンド)を記述することで、前のプロセスの終了を待た...
UNIX/Linuxシステムで、現在実行中のプロセスの一覧を調べるときにはpsコマンドを実行します。psコマンドは、実行中のプロセスの名前とプロセスIDなどのプロセスの情報を表示します。コマンドをバックグラウンドで実行する際に表示されるプロセス...
UNIX/Linuxシステムでプロセスを終了するときはkillコマンドを使用します。killコマンドの引数に終了したいプロセスのプロセスIDを指定します。また、「&」を付けずに実行したプロセス(フォアグラウンドプロセス)は、Ctrl+cキーを押...
ここまで説明した以外にも、コマンドの入力を助けるヒストリ機能、エイリアス機能、ファイル名の補完機能、チルダパス名などもあります。
Upcoming SlideShare
Loading in …5
×

1 Linux入門 第4章 シェル

793 views

Published on

  • Be the first to comment

1 Linux入門 第4章 シェル

  1. 1. この章ではシェルの概要及びシェルの基本機能について学習します。
  2. 2. ユーザーが入力したコマンドは、まずシェル(shell)というプログラムに渡されます。シェルは入力されたコマンドを解釈し、カーネルに実行を依頼します。つまりシェルはユーザーとUNIX/Linuxシステムの通訳のような役割を果たしています。ここまで、コマンドを入力することで、目的の操作を実行する方法を学んできました。ここでは、このシェルの仕組みを少し詳しく学習します。
  3. 3. シェルにはいくつかの種類があります。代表的なものとして標準シェル(sh)、Cシェル(csh)やbashがあります。各シェルともユーザーが入力したコマンドを解釈する機能を持ちますが、一部の操作には違いがあります。また、シェルの機能を活用することで、UNIX/Linuxシステムをさらに効率よく利用することができます。なお、ユーザーが利用するシェルは、スーパーユーザーによってユーザー登録時に決められます。
  4. 4. 今回は、シェルの基本的な機能として、メタキャラクタ、リダイレクト、パイプライン、順次処理、同時並行処理、プロセス管理について学習します。
  5. 5. メタキャラクタとは、ファイル名を表す特別な意味を持った記号です。メタキャラクタを含むファイル名は、該当するファイル名に置き換えられるため、複数のファイル名や長い名前のファイル名を入力する際に役立ちます。*は任意の文字列を表し、?は任意の1文字を表し、[ ]は[ ]内の文字のいずれか1文字を表します。また、[ ]は、文字と文字を-(ハイフン)でつなぐことで、範囲内の1文字を表すこともできます。
  6. 6. UNIX/Linuxの多くのコマンドは、通常、キーボード(標準入力)から何らかの入力を受け取り、それを処理し、結果をディスプレイ(標準出力)に出力します。シェルの機能を用いることで入出力を切り替えることができます。これをリダイレクトと呼びます。リダイレクトを利用することで、ファイルから入力を受け取ったり、出力結果をファイルに保存することができるため、コマンドの結果を様々な用途に利用することができます。
  7. 7. リダイレクトは、コマンドと入力または出力先ファイルの間に、入出力の切り替えを表す「>」(大なり)や「<」(小なり)などを指定して表します。上記の実行結果では、出力先の変更を表す「>」を利用して、lsコマンドの出力結果をdirlistファイルに保存しています。
  8. 8. パイプラインを用いると、コマンドの出力結果を直接次のコマンドの入力として渡すことができます。複数のコマンドを組み合わせて実行結果を得たい場合に利用します。パイプラインは「|」(バーティカルバー)で表し、コマンドとコマンドの間に指定します。パイプラインと組み合わせて頻繁に使用されるコマンドとしてmoreコマンドがあります。パイプラインとmoreコマンドを組み合わせることで、任意のコマンドの実行結果を1画面ずつディスプレイに出力することができます。
  9. 9. コマンドは改行を区切りとして単一で入力することができますが、「;」(セミコロン)でコマンドを区切ることで、1行に複数のコマンドを入力することができます。1行に書かれたコマンドは先頭から順番に処理をします。これを「順次処理」と呼びます。
  10. 10. UNIX/Linuxシステムでは実行中のコマンドをプロセスという単位で呼びます。通常のコマンド実行ではプロセスは、前のプロセスが終了してから次のプロセスが実行されますが、コマンドの最後に「&」(アンド)を記述することで、前のプロセスの終了を待たずに次のプロセスを実行することができます。これをバックグラウンドプロセスと呼びます。「&」を付けてコマンドを実行すると数字が何桁か表示されます。この数字は各プロセスを管理するための番号でプロセスIDと呼びます。上記の例では、引数に指定した秒数だけ処理を停止するsleepコマンドをバックグラウンドプロセスとして実行しています。
  11. 11. UNIX/Linuxシステムで、現在実行中のプロセスの一覧を調べるときにはpsコマンドを実行します。psコマンドは、実行中のプロセスの名前とプロセスIDなどのプロセスの情報を表示します。コマンドをバックグラウンドで実行する際に表示されるプロセスIDとpsコマンドの「PID」の欄に表示されるプロセスIDは同じになります。
  12. 12. UNIX/Linuxシステムでプロセスを終了するときはkillコマンドを使用します。killコマンドの引数に終了したいプロセスのプロセスIDを指定します。また、「&」を付けずに実行したプロセス(フォアグラウンドプロセス)は、Ctrl+cキーを押して終了します。
  13. 13. ここまで説明した以外にも、コマンドの入力を助けるヒストリ機能、エイリアス機能、ファイル名の補完機能、チルダパス名などもあります。

×