【使ったことある?】Linuxの「&」の使い方

linux-and
  • このエントリーをはてなブックマークに追加
  • Pocket

Linuxの「&」はコマンドと共に使うことができる。

コマンドをバックグランドジョブとして使うためのコマンドで、「&&」などとは役割がまったく違っている。

簡単に確認していこう。

Linuxの「&」の使い方

linuxのデフォルトのシェルであるbashはコマンドの最後に「&」をつけると、そのコマンドをバックグランドジョブとして実行してくれる。

Linuxはマルチタスク対応なので、打ちこんで実行しているコマンド以外にもユーザの見えない場所でタスクを実行できるようになっている。

一般的に「いま打ちこんで実行しているコマンド」は「フォアグランドジョブ」、逆にそれ以外の「ユーザの見えない場所で実行しているタスク」を「バックグランドジョブ」と表現される。

具体的な書式は「コマンド &」となる。「&&」と混在しそうになるが、全く動作がことなるので注意しよう。基本的にはスクリプトで活用するのではなく、ユーザがコンソールにて使用することがほとんどだろう。

&&の使い方は下記だ。

実際に&を使ってみる

例えばコンソール上でsleepを使用してみよう。

$ sleep 3000 &

sleep

とすればよい。sleepは指定された時間を停止するコマンドだ。

上記を確認するとスリープしているにも関わらず、コマンドプロンプトが返ってくることが確認できるはずだ。

要するにバックグラウンドでsleepを実行している状態になる。(不思議といえば不思議な状態だ)

ジョブを管理するコマンド

バックグランドへジョブを回したのはいいが、ジョブの切り替えの仕方がわからないと操作に困るだろう。「jobs」「bg」「fg」コマンドについても触れておこう。

jobsコマンド

「jobs」コマンドを実行すると現在ユーザが設定したジョブ一覧が表示される

$ jobs

sleep2

fgコマンド

「fg」コマンドは、バックグランドジョブを、フォアグランドジョブに切り替える。jobsで表示された番号を指定すればよい「fg 1」などだ。

$ fg 1

sleep3

bgコマンド

「bg」コマンドは一時停止しているフォアグランドジョブをバックグランドジョブとして再開するコマンドである、なおフォアグランドジョブを一時停止するには「Control+z」を押すとジョブが一時停止する。

sleep4

$ bg 1

sleep5

下記も参考に。

まとめ

このページではLinuxの「&」の使い方についてお伝えした。実際にsleepコマンドを使って試してみていただければ使い方もわかりやすいだろう。

  • このエントリーをはてなブックマークに追加
  • Pocket

このページの続きや関連ページは下記から一覧で確認できます。

IT講師に興味はありませんか?

・「今までIT講師をやってきたが、更に多くの講義を行いたい」

・「エンジニアとしてやってきたが講師業に魅力を感じている」

・「講師として活躍するためにベースとなる知識を知りたい」

・「様々な分野や言語の講師にチャレンジしてみたい」


という方はぜひIT講師募集のページをご覧ください。


リナックスアカデミーでは「受講している方々にITを好きになってもらう」ことを目標に、同じ目標に向かって歩んで行ける講師の方を常に探しています。


システム開発やインフラ構築などのエンジニアリング経験を活かし、新入社員などの未経験者や経験の浅い初学者の方々に対してITトレーニングを行っていただくことになります。


テキストやカリキュラムは事前に用意されており、それらを元に講義を進めていくため、IT講師をはじめて実施する方でも安心してトレーニングを実施できます。


IT講師募集のページを見る

SNSでもご購読できます。

コメントを残す

*

未経験からの育成制度も充実
IT講師に興味はありませんか?

リナックスアカデミーでIT講師の積極募集を開始! 経験・未経験問わずご応募可能。育成制度で講師スキル向上も目指せます

IT講師に応募する