前書き

このチュートリアルは、Linuxの基本を教えて新しいユーザーを獲得するシリーズの最初のチュートリアルであり、ターミナル、Linuxコマンドライン、およびコマンドの実行を開始する方法について説明します。 Linuxを初めて使用する場合は、Linuxサーバーと対話するための標準的な方法であるため、ターミナルに慣れる必要があります。 コマンドラインの使用は困難な作業のように思えるかもしれませんが、基本から始めてそこからスキルを構築すれば、実際には非常に簡単です。

このチュートリアルを最大限に活用するには、接続して使用するLinuxサーバーが必要です。 まだ持っていない場合は、次のリンクをクリックして、すぐに起動できます:https://www.digitalocean.com/community/tutorials/how-to-create-your-first-digitalocean-droplet-virtual-server [DigitalOceanドロップレットの作成方法]。 このチュートリアルはUbuntu 14.04サーバーに基づいていますが、一般的な原則は他のLinuxディストリビューションにも適用されます。

ターミナルエミュレータとは何かを説明することから始めましょう。

ターミナルエミュレータ

端末エミュレーターは、グラフィカル環境で端末を使用できるようにするプログラムです。 ほとんどの人は日々のコンピューターのニーズにグラフィカルユーザーインターフェイス(GUI)を備えたOSを使用しているため、ほとんどのLinuxサーバーユーザーにはターミナルエミュレーターの使用が必要です。

オペレーティングシステム別の一般的な無料のターミナルエミュレータを次に示します。

  • * Mac OS X *:ターミナル(デフォルト)、iTerm 2

  • * Windows *:PuTTY

  • * Linux *:ターミナル、KDE ​​Konsole、XTerm

各ターミナルエミュレータには独自の機能セットがありますが、リストされているものはすべて優れた機能を発揮し、簡単に使用できます。

シェル

Linuxシステムでは、shell_はユーザーのコマンドとスクリプトファイルを解釈し、サーバーのオペレーティングシステムにそれらの処理を指示するコマンドラインインターフェイスです。 _Bourne shell+ sh +)や_C shell_( + csh +)など、広く使用されているいくつかのシェルがあります。 各シェルには、コマンドの解釈方法に関する独自の機能セットと複雑さがありますが、それらはすべて、とりわけ入力および出力のリダイレクト、変数、条件テストを備えています。

このチュートリアルは、通常「+ bash +」と呼ばれる_Bourne-Again shell_を使用して作成されました。これは、Ubuntu、CentOS、RedHatを含むほとんどのLinuxディストリビューションのデフォルトシェルです。

コマンドプロンプト

サーバーに初めてログインすると、通常、Message of the Day(MOTD)が表示されます。これは通常、サーバーが実行しているLinuxディストリビューションのバージョンなど、その他の情報を含む情報メッセージです。 MOTDの後、コマンドプロンプトまたはシェルプロンプトにドロップされます。ここで、サーバーにコマンドを発行できます。

コマンドプロンプトに表示される情報は、ユーザーがカスタマイズできますが、デフォルトのUbuntu 14.04コマンドプロンプトの例を次に示します。

コマンドプロンプトの構成の内訳は次のとおりです。

  • + sammy +:現在のユーザーの_ユーザー名_

  • + webapp +:サーバーの_ホスト名_

  • 現在のディレクトリ。 デフォルトのシェルである「+ bash 」では、「〜」またはチルダは、現在のユーザーの_homeディレクトリ_のパスに展開される特殊文字です。この場合、 ` / home / sammy +`を表します

  • + $ +:プロンプト記号。 これは、コマンドプロンプトの終了を示し、その後ユーザーのキーボード入力が表示されます

`+ root `としてログインし、 ` / var / log +`ディレクトリにログインした場合のコマンドプロンプトの表示例を次に示します。

[email protected]:/var/log#

コマンドプロンプトを終了する記号は、「+ root 」の標準プロンプト記号である「#」です。 Linuxでは、「 root +」ユーザーは_superuser_アカウントです。これは、システム全体の管理機能を実行できる特別なユーザーアカウントです。サーバー上のタスクを実行する権限を持つ無制限のユーザーです。

コマンドの実行

コマンドは、バイナリプログラムまたはスクリプトの実行可能ファイルの名前を指定することにより、コマンドプロンプトで発行できます。 OSと共にインストールされる多くの標準Linuxコマンドとユーティリティがあり、ファイルシステムのナビゲート、インストールとソフトウェアパッケージのインストール、およびシステムとアプリケーションの設定を行うことができます。

実行中のコマンドのインスタンスは「プロセス」と呼ばれます。 コマンドが実行されるデフォルトの方法である_foreground_でコマンドが実行されると、ユーザーはコマンドプロンプトに戻る前にプロセスが完了するのを待たなければならず、その時点でさらにコマンドを発行し続けることができます。

Linuxでは、ファイル名やディレクトリ名、コマンド、引数、オプションなど、Linuxのほとんどすべてで大文字と小文字が区別されることに注意してください。 期待どおりに機能しない場合は、コマンドのスペルと大文字と小文字を再確認してください!

コマンド実行の基本をカバーするいくつかの例を実行します。

注: Linuxサーバーにまだ接続していない場合は、今がログインのよい機会です。 Linuxサーバーを使用しているのに接続できない場合は、次のリンクを参照してください:https://www.digitalocean.com/community/tutorials/how-to-connect-to-your-droplet-with-ssh [接続方法SSHを使用したドロップレット]。

引数またはオプションなし

引数やオプションなしでコマンドを実行するには、コマンドの名前を入力して、 `+ RETURN +`を押します。

このようなコマンドを実行すると、コマンドごとに異なるデフォルトの動作を示します。 たとえば、引数なしで `+ cd `コマンドを実行すると、現在のユーザーのホームディレクトリに戻ります。 ` ls `コマンドは、現在のディレクトリのファイルとディレクトリのリストを印刷します。 引数なしの ` ip `コマンドは、 ` ip +`コマンドの使用方法を示すメッセージを出力します。

引数なしで `+ ls +`コマンドを実行して、現在のディレクトリ内のファイルとディレクトリをリストしてみてください(ない場合もあります):

ls

引数付き

多くのコマンドは、コマンドの動作に影響を与える可能性のある_arguments_または_parameters_を受け入れます。 たとえば、 `+ cd `コマンドを使用する最も一般的な方法は、変更するディレクトリを指定する単一の引数を渡すことです。 たとえば、多くの標準コマンドがインストールされている ` / usr / bin +`ディレクトリに移動するには、次のコマンドを発行します。

cd

`+ cd `コンポーネントがコマンドであり、コマンドの後に最初の引数 ` / usr / bin +`が続きます。 コマンドプロンプトの現在のパスがどのように更新されたかに注意してください。

必要に応じて、 `+ ls +`コマンドを実行して、新しい現在のディレクトリにあるファイルを確認してください。

ls

オプション付き

ほとんどのコマンドは、コマンドの動作を変更する_options_(_flags_または_switches_とも呼ばれます)を受け入れます。 それらは特別な引数であるため、オプションはコマンドの後に続き、単一の「-」文字とそれに続く1つ以上の_options_で示され、個々の大文字または小文字で表されます。 さらに、一部のオプションは「-」で始まり、その後に単一の複数文字(通常は説明的な単語)オプションが続きます。

オプションの仕組みの基本的な例については、 `+ ls `コマンドを見てみましょう。 以下に、 ` ls +`を使用するときに便利ないくつかの一般的なオプションを示します。

  • + -l +:「長いリスト」を出力します。これには、許可、所有権、ファイルサイズ、タイムスタンプなどの追加の詳細が含まれます

  • + -a +:隠しファイル( `。`で始まる)を含むディレクトリのファイルの_all_をリストします

`+ ls `で ` -l +`フラグを使用するには、次のコマンドを使用します。

ls -l

リストには以前と同じファイルが含まれていますが、各ファイルに関する追加情報が含まれていることに注意してください。

前述のように、多くの場合、オプションはグループ化できます。 `+ -l `と ` -a `オプションを一緒に使いたい場合は、 ` ls -l -a +`を実行するか、このコマンドのようにそれらを組み合わせます。

ls -la

リストには、「-a +」オプションがあるため、リストに隠しディレクトリ「。」と「 .. +」が含まれていることに注意してください。

オプションと引数あり

コマンドを実行するとき、オプションと引数はほとんど常に組み合わせることができます。

たとえば、次の `+ ls `コマンドを実行することで、現在のディレクトリに関係なく、 ` / home +`の内容を確認できます。

ls -la /home

「+ ls 」はコマンド、「-la 」はオプション、「 / home 」はリストするファイルまたはディレクトリを示す引数です。 これにより、 ` / home +`ディレクトリの詳細なリストが出力され、サーバー上のすべての通常ユーザーのホームディレクトリが含まれます。

環境変数

環境変数は、コマンドとプロセスの実行方法を変更するために使用される名前付きの値です。 サーバーに初めてログインすると、デフォルトでいくつかの構成ファイルに従っていくつかの環境変数が設定されます。

すべての環境変数を表示する

特定の端末セッションに設定されているすべての環境変数を表示するには、 `+ env +`コマンドを実行します:

env

おそらく多くの出力がありますが、 `+ PATH +`エントリを探してみてください:

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

`+ PATH`環境変数は、コマンドが発行されたときにシェルが実行可能プログラムまたはスクリプトを探すディレクトリのコロン区切りのリストです。 たとえば、 `+ env `コマンドは ` / usr / bin `にあり、そのパスは ` PATH +`環境変数にあるため、完全修飾の場所を指定せずに実行できます。

変数の値を表示する

環境変数の値は、変数名の前に「+ $ +」を付けることで取得できます。 そうすると、参照される変数がその値に拡張されます。

たとえば、 + PATH`変数の値を出力するには、 + echo`コマンドを使用できます:

echo

または、デフォルトでユーザーのホームディレクトリに設定されている変数「+ HOME +」を使用して、次のようにホームディレクトリに変更できます。

cd

設定されていない環境変数にアクセスしようとすると、何も展開されません。空の文字列。

環境変数の設定

環境変数を表示する方法がわかったので、それらを設定する方法を学習する必要があります。

環境変数を設定するために必要なことは、変数名で始まり、すぐに `+ = +`記号が続き、すぐに目的の値が続くことです:

VAR=value

既存の変数を設定すると、元の値が上書きされることに注意してください。 変数が最初に存在しなかった場合、作成されます。

Bashには、変数をエクスポートして子プロセスに継承される「+ export +」というコマンドが含まれています。 簡単に言えば、これにより、現在のセッションからエクスポートされた環境変数を参照するスクリプトを使用できます。 これが何を意味するのかまだ不明な場合は、今のところ心配する必要はありません。

変数を設定するときに既存の変数を参照することもできます。 たとえば、アプリケーションを `+ / opt / app / bin `にインストールした場合、このコマンドを使用して ` PATH +`環境変数の最後にそのディレクトリを追加できます。

export PATH=$PATH

次に、「+ echo」を使用して、「+ PATH」変数の最後に「+ / opt / app / bin」が追加されていることを確認します。

echo $PATH

この方法で環境変数を設定すると、現在のセッションに対してのみ環境変数が設定されることに注意してください。 つまり、ログアウトするか、別のセッションに変更すると、環境に加えた変更は保持されません。 環境変数を永続的に変更する方法がありますが、これについては後のチュートリアルで説明します。

結論

Linuxターミナルの基本(およびいくつかのコマンド)について学習したので、Linuxコマンドの知識を広げるための優れた基盤が必要です。 https://www.digitalocean.com/community/tutorials/basic-linux-navigation-and-file-management [このシリーズの次のチュートリアル]を読んで、ファイルとその権限をナビゲート、表示、編集する方法を学習してください。