このセクションでは自宅サーバーとしてLinuxを扱ううえで役に立つ基本操作基礎知識テクニックについて初心者/ビギナー向けに解説します。

HPの格安エントリーサーバー機"HP ProLiant ML115"でのLinuxサーバー構築記を掲載しました。サーバー機の選定にお悩みの方は是非お越しください...。お便利サーバー.com管理人。
その他諸々
LinuxOSの使いこなし術

LinuxOSを使いこなす

クライアントOSとの違い

絶対パスと相対パス

"パスが通っている"とは?

"/"と"."と".."の意味

"."(ドット)ファイルについて

ワイルドカードと正規表現

コマンドの強制終了

コマンド操作の補完機能

コマンド操作の履歴機能

リダイレクトとパイプ

属性とパーミッション〜その1

属性とパーミッション〜その2

アカウント情報ファイルの操作

ランレベルについて

システムが起動しないときは

ハードディスクの増設

アプリケーションの導入法

サイト内検索

コマンド操作の補完機能

CUI によるコマンド入力の シェル 操作で最も煩わしいのは、 「正確にタイプしなければならない。」 という点でしょう。

しかし、 WBEL CentOS の標準コマンドシェルである bash には、 「コマンドの補完」 という便利な機能が備わっていて、 「初めから何文字か」 さえ大体覚えていれば、完全なコマンド名やパス名、ファイル名がわからなくとも、すばやくかつ間違いなく作業を行うことができるようになっています。

コマンドの補完

例えば、 nslookup というコマンドを実行したいときには、そのすべてをタイプする必要はなく、 "nsl" までタイプして TAB キーを押すと、入力中の プロンプト に残りの "ookup" が自動的に付け加えられるようになっています。

[root@web1 root]# nsl

TAB キーを一回押す。

[root@web1 root]# nslookup  自動で"ookup"が補完される。

つまり TAB キーを押すことで、WBELやCentOSのシステムが実行可能なコマンド名の一覧から、 "nsl" で始まるものを自動的に検索してくれているわけです。

しかし、もっと省略して "ns" TAB では、ビープ音が鳴るだけでコマンドの補完は行われません。

[root@web1 root]# ns

TAB キーを一回押す。

[root@web1 root]# ns ビープ音が鳴るだけ。

TAB キーをもう一回押す。

[root@web1 root]# ns
nscd    nslookup   nspluginviewer
nsgmls   nspluginscan nsupdate   "ns"で始まるコマンドが一覧表示される。
[root@web1 root]# ns

という具合に、 "ns" で始まるコマンドの一覧が表示されます。

候補があまりにも大量にあるときは、例えば "Display all 186 possibilities? (y or n)" 、つまり 「大量に表示されますが、かまいませんか?」 と、問いかけてきます。普通は "n" でキャンセルすべきですね。 "y" で全部表示させても、まず意味がありませんから。

つまり、 "ns" で始まるコマンドが複数存在するために一度目の TAB キーでは補完を行うことができなかったため、二度目の TAB "ns" で始まるコマンドの一覧を表示してくれたわけです。

もちろん、ここで "l" を追加でタイプして TAB キーを押せばきちんと補完されます。

また、例えば useradd コマンドを実行するために、 "use" TAB とタイプしたとしますすると、 "r" だけ補完されて、ビープ音が鳴ります。

[root@web1 root]# use

TAB キーを一回押す。

[root@web1 root]# user "r"だけ補完される。

TAB キーをもう一回押す。

[root@web1 root]# user  ビープ音が鳴るだけ。

TAB キーをもう一回押す。

[root@web1 root]# user
useradd  userhelper userisdnctl usermount userpasswd
userdel  userinfo  usermod   usernetctl users
[root@web1 root]# user

実は、このシステムで実行可能なコマンドで、 "use" で始まるものは、次の文字が全て "r" になっているため、最初の TAB キーでは "r" のみが補完された、というわけです。

ディレクトリ名とファイル名の補完

例えば、ネットワークの設定ファイルである、 "/etc/sysconfig/network" の編集を行うときは、

[root@web1 root]# pico /etc/sysconfig/network Enter

で設定ファイルをエディタで開くことになります。

こういう深い パス の下にあるファイルを、自分の記憶だけを頼りに正確にタイプするのは大変なことです。

例えば上の例を 「コマンドの補完」 機能を利用すれば、

[root@web1 root]# pico /e

TAB キーを一回押す。

[root@web1 root]# pico /etc/ "tc/"が補完される。

と、ディレクトリ名 "/etc/" "/e" までタイプしておいて TAB キーを押すと、 "/" の直ぐ下のディレクトリやファイルの名前の中から "e" で始まるものを探してくれます。

"/" の直ぐ下で "e" で始まるものは、ディレクトリ "etc" しかありませんから、この場合は自動的に不足している "tc/" が補完され、入力されたわけです。

次いで、 "sys" までタイプして同様に TAB キーを押します。

[root@web1 root]# pico /etc/sys

TAB キーを一回押す。

[root@web1 root]# pico /etc/sys ビープ音が鳴るだけ。

ここでもう一度 TAB キーを押すと、今度は、 "/etc/" 以下で、 "sys" から始まるディレクトリやファイルの一覧が表示されます。

TAB キーをもう一回押す。

[root@web1 root]# pico /etc/sys
sysconfig      syslog.conf
sysctl.conf     syslog.conf.rpmnew "sys"で始まるコマンドが一覧表示される。
[root@web1 root]# pico /etc/sys

つまり、対象となる "/etc/" ディレクトリに以下に、 "sys" で始まるディレクトリとファイルの候補が複数(この場合は四つ)存在するケースでは、 TAB キーを二回押すことで「補完対象の候補」が表示されるわけです。

この「補完対象の候補」を見ればお分かりのとおり、目的のディレクトリ名 "sysconfig/" を一度の TAB 操作で補完するには、 "sysco" までタイプしておけば良いことがお分かりと思います。

[root@web1 root]# pico /etc/sysco

TAB キーを一回押す。

[root@web1 root]# pico /etc/sysconfig/ "nfig/"が補完されました。

同様にして、

[root@web1 root]# pico /etc/sysconfig/net

TAB キーを一回押す。

[root@web1 root]# pico /etc/sysconfig/net ビープ音が鳴るだけ。

TAB キーをもう一回押す。

[root@web1 root]# pico /etc/sysconfig/net
netdump    netdump_id_dsa.pub network-scripts
netdump_id_dsa network      networking "net"で始まるコマンドの一覧表示。
[root@web1 root]# pico /etc/sysconfig/netw  "w"をタイプして追加。

TAB キーを一回押す。

[root@web1 root]# pico /etc/sysconfig/network "ork"が補完されました。

このように「コマンドの補完機能」は 実行できるコマンド名 だけではなく、 存在するファイル名 も呼び出すことが可能です。

こういうふうにひとつの操作毎に説明を入れると「なんだか面倒くさそう」と思われるかもしれませんが、慣れてくると自然に指が動くようになり、タイプミスが減って操作が格段に早くなります。

最初は戸惑うかもしれませんが、一度慣れてしまうともう二度と手放せない機能です。積極的に利用することをオススメします。

このサイトに対するご意見、ご要望、苦情、泣き言、献上品、資金援助などがございましたら こちら からお寄せください(お返事できなかったらごめんなさい)。もちろん リンクフリー です。趣味や勉強のためでしたら、引用、転用、コピー、朗読、その他OKです。このサイトへのリンクについては こちら をご覧ください。
Powered by Apache
”Linux”は、Linus Torvalds 氏の各国における登録商標です。”Red Hat”及びRed Hatのロゴおよび Red Hat をベースとしたすべての商標とロゴは、各国におけるRed Hat, Inc. 社の商標または登録商標です。その他のプログラム名、システム名、製品名などは各メーカー、ベンダの各国における登録商標又は商標です。
Powered by White Box Enterprise Linux