Linuxのシェルとコマンドプロンプトを理解しよう:“応用力”をつけるためのLinux再入門(4)(2/2 ページ)
今回のテーマは「シェル」です。リモートでサーバを操作したり、GUIではできない操作をしたり、よく行う処理を自動化したり……と、Linuxではシェルを使う機会がとても多く、また、シェルを使いこなせるようになることで活用の幅が大きく広がります。これから何回かに分けてシェルの使い方を紹介していきます。
コマンドプロンプトの“読み方”
コマンドプロンプトにはさまざまな情報が表示されています。例えば、今回使用している画面では「[study@localhost ~]$」と表示されています。この[]の中に書かれている内容は、「ユーザー名@ホスト名 カレントディレクトリ」という意味になります。「~(チルダ)」記号は、ホームディレクトリという意味です。
最後の記号は、いわばコマンドプロンプトの“目印”のようなもので、一般ユーザーで実行している場合は「$」記号が表示されるように設定されています(※)。rootユーザーという特別なユーザーで実行している場合は「#」という記号が表示されます。
【※】シェルの種類を示したい場合、Bシェル系は「$」記号、tcshなどのCシェル系は「%」を使います。
つまり、「[study@localhost ~]$」というプロンプトからは「現在、一般ユーザーとしてコマンドラインを使っており、studyという名前でlocalhostというホストにログインしている。カレントディレクトリはホームディレクトリ」ということが分かります。
コマンドプロンプトに何を表示するかは、最後の「$」記号も含め、シェルの設定ファイルに記述します。
コマンドラインのサンプルなどでは、一般ユーザーで実行できるコマンドならば「$」を使って「$ cat /etc/shells」のように示します。「$」はプロンプトを示しているので、コマンドラインで「cat /etc/shells」と入力して[Enter]キーを押すのだな、ということが分かります。「# shutdown」のように示されていれば、rootユーザーで「shutdown」と入力して[Enter]キーを押すのだな、ということが分かります(※)。
【※】「shutdown」コマンドは、その名の通り、システムをシャットダウンするコマンドで、rootユーザーで実行する必要があります。ただし、デスクトップ環境に「終了」ボタンがあることからも分かるように、個人利用のPCでは一般ユーザーのままでシャットダウンや再起動を行えるように設定されています。CentOS 7でコマンドラインから再起動したい場合は、「shutdown -r now」(直ちに再起動)、あるいは「reboot」を実行します。
[オマケ]zshのインストールとログインシェルの変更
CentOS 7にzshをインストールしてみよう
シェルに興味を持ち始めると、「zsh」というシェルを使ってみたくなるかもしれません。ここでは、CentOS 7環境にzshをインストールする方法と、ログインシェル(デフォルトの起動シェル)を変更する方法を紹介しましょう。
(1)「アプリケーション」→「システムツール」→「ソフトウェア」で「ソフトウェア」を起動し、zshを検索します(画面8)。
(2)zshのパッケージにチェックマークを入れて、「変更を適用」をクリックします(画面9)。
(3)認証が要求されるので、管理者のパスワードを入力します(画面10)。確認メッセージは数回表示されます。
以上の操作でzshをインストールできました。「cat /etc/shells」コマンドをもう一度実行してみましょう(画面11)。
ログインシェルを変更してみよう
システムに不慣れな状態でシェルを変更するのはあまりお勧めしませんが、もし操作に慣れてきて「このシェルが自分に合っているのでずっと使いたい」と思ったら、ログインシェルを変更してみるのも面白いでしょう。
ログインシェルは「chsh」コマンドで変更できます。実行すると新しいシェルを入力するよう求められるので、「/bin/zsh」のように、zshがどこにあるかも含めて指定します(画面12)。
このように、ファイルやコマンドを場所(ディレクトリ)も含めて指定することを、“パス付きで指定”あるいは“フルパスで指定”のように表現します。「パス(PATH)」については今後の連載で説明します。
続いて、パスワードの入力が求められるので、入力して[Enter]キーを押します。シェルのパスが分からないなどで操作を止めたい場合は、[Ctrl]+[C]キーを押して中断してください。
変更したログインシェルは、次回のログインから有効になります。また、元に戻したい場合は、再度chshコマンドを実行して以前のシェルを指定し直してください。本連載も含め、Linux関連の情報ではbashを使っているケースが多いです。
なお、インストールされているシェルのパスは先ほどの「cat /etc/shells」や、chshコマンドを使って「chsh -l」で確認できます(※)。また、chshコマンドで使用できるオプションは「chsh --help」で調べることができます。この「--help」オプションは今回使用したpsやcatの他、多くのコマンドで使用できるのでぜひ試してみてください。
【※】chshコマンドは「/etc/shells」を参照しています。
- シェルスクリプトに挑戦しよう(20)オプションの処理[その2]――長いオプション
- シェルスクリプトに挑戦しよう(19)オプションの処理[その1]
- シェルスクリプトに挑戦しよう(18)連想配列
- シェルスクリプトに挑戦しよう(17)配列[応用編]
- シェルスクリプトに挑戦しよう(16)配列[基本編]
- シェルスクリプトに挑戦しよう(15)繰り返し処理の中断
- シェルスクリプトに挑戦しよう(14)制御構文[その6]――while/untilによる繰り返し処理
- シェルスクリプトに挑戦しよう(13)制御構文[その5]――forによる繰り返し処理(3)
- シェルスクリプトに挑戦しよう(12)制御構文[その4]――forによる繰り返し処理(2)
- シェルスクリプトに挑戦しよう(11)制御構文[その3]――forによる繰り返し処理(1)
- シェルスクリプトに挑戦しよう(10)「read」コマンドでキーボードからの入力を受け取る
- シェルスクリプトに挑戦しよう(9)制御構文[その2]――caseによる条件分岐
- シェルスクリプトに挑戦しよう(8)条件の書き方
- シェルスクリプトに挑戦しよう(7)制御構文[その1]――ifによる条件分岐
- シェルスクリプトに挑戦しよう(6)スクリプトで引数を使用する[その2]
- シェルスクリプトに挑戦しよう(5)スクリプトで引数を使用する[その1]
- シェルスクリプトに挑戦しよう(4)変数の定義と参照
- シェルスクリプトに挑戦しよう(3)改行/空白/引用符のルール
- シェルスクリプトに挑戦しよう(2)Windows 10のbashを試す!
- シェルスクリプトに挑戦しよう(1)準備編
- Linuxの定番テキストエディタ「vi」をマスターしよう(3)編集と置き換え/チュートリアル編
- Linuxの定番テキストエディタ「vi」をマスターしよう(2)検索/オプション活用編
- Linuxの定番テキストエディタ「vi」をマスターしよう(1)基本操作編
- 「シグナル」を送ってみよう
- Linuxの「シグナル」って何だろう?
- Linuxの「ジョブコントロール」をマスターしよう
- Linuxの「ジョブ」って何だろう?
- Linuxの「プロセス」って何だろう?
- 「SUID(セットユーザーID)」属性の効果を試してみよう
- 「共有ディレクトリ」を作成してパーミッション(許可属性)への理解を深めよう
- Linuxのユーザーとグループって何だろう?
- 「ls -l」コマンドの表示からファイルの属性を理解しよう
- PATHを理解して、コマンドの在りかを探してみよう
- Linuxのディレクトリに親しもう
- パイプとリダイレクトでコマンドを組み合わせて実行しよう
- 補完機能、ヒストリ、エイリアスでコマンドラインの入力を“楽”にしよう
- Linuxのシェルとコマンドプロンプトを理解しよう
- LinuxのCUIとGUI、デスクトップ環境を理解しよう
- VirtualBoxでLinuxのテスト環境を作ってみよう
- いまさら聞けないLinuxの基礎知識
筆者紹介
西村 めぐみ(にしむら めぐみ)
PC-9801N・PC-486DXからのDOSユーザー。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。のち退社し、専業ライターとして活動を開始。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『はじめてでもわかるSQLとデータ設計』『シェルの基本テクニック』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。
Copyright © ITmedia, Inc. All Rights Reserved.