Linuxコマンドとは?実行方法と基本のコマンドを紹介

Linuxコマンドとは?
Linuxは主にサーバーコンピューター用のOSとして利用されています。サーバーを管理するためにはターミナル(端末)用のアプリケーションでリモート接続することがほとんどです。リモート接続によるコンピューター利用の大半はCUI(Character User Interface)と呼ばれる文字だけが表示される画面を通じてコンピューターとやりとりすることになります。そのようなCUI環境で行うことは、コマンドと呼ばれる文字列をキーボードで入力するコマンド実行です。ファイルを開く、プロセスの状態を確認する、コンピューターやアプリケーションの設定をする等の作業では、全てにおいて何かしらのコマンドを実行することになります。サーバー管理者だけではなく、開発環境としてLinuxを利用するソフトウェア開発者にとってもLinuxのコマンドを覚えることは必須です。この記事では、これからLinuxを利用する方の最初のステップとなるようなLinuxコマンドの使い方をご紹介します。
Linuxコマンドの実行方法
コマンドを実行するためには、LinuxをCUIモードで起動するか、GUIモードで起動してターミナルアプリケーションを起動するか、もしくはWindowsマシンなどの別のコンピューターからリモート接続可能なターミナルアプリケーションを使い、Linuxのシェルにアクセスする必要があります。個人でLinuxを学んでみたい方は、Windowsコンピューターにコンピューター仮想化ソフトウェアをインストールし、仮想マシンに対してLinuxディストリビューションをインストールするのが良いでしょう。多くのディストリビューションではまずGUIが起動し、そこからターミナルアプリケーションを起動することができるようになっています。シェルとはOSの中核となるプログラムに対して、利用者がアクセスするためのプログラムです。例えば、「テキストエディターを起動する」という命令をOSに伝えるためには、利用者はシェルを通してテキストエディターを起動するためのコマンドを実行することになります。ここではシェルとしてBashというシェルを利用することを想定します。Bashは多くのLinuxディストリビューションで利用可能であり、特に設定をせずともデフォルトのシェルとして採用されている場合が多いです。なお、筆者の環境はUbuntu 18.04.3
です。本記事ではディストリビューションに依らない説明をしますが、一部のコマンド実行結果などの表示は環境により異なる場合があります。ご了承ください。
コマンドの入力と実行
前置きが長くなりましたが、さっそくコマンドを実行してみましょう。ターミナルアプリケーションなどでアクセスし、シェルが起動すると以下のような画面が表示されているでしょう。
1
|
user1@host1:~$
|
これはコマンドラインと呼ばれるものです。$
などの記号の後にキーボードからコマンドを入力できるようになっています。user1@host1:~
の部分はユーザー名@コンピューター名:現在のディレクトリ
と言う意味で表示されていますが、環境や設定によって異なります。このコマンドラインに対してキーボードからls
と入力してエンターキーを押してみてください。
1
|
user1@host1:~$ lsabout.txt sample.png テンプレート ドキュメント ピクチャ 公開memo.txt ダウンロード デスクトップ ビデオ ミュージックuser1@host1:~$
|
これでls
コマンドの実行が完了しました。ls
はディレクトリの内容を表示するコマンドです。上記の例ではユーザーuser1
のホームディレクトリ内にある"memo.txt"
のようなテキストファイルやPNG画像ファイル、"ドキュメント"
などのディレクトリ名が表示されています。コマンドラインにキーボードからコマンドの文字列をタイプしてエンターキーを押す。これがコマンドを実行する方法です。さて、上記のディレクトリ内容の表示ですがファイル名やディレクトリ名などの名前しか表示されておらず、情報が少ないです。ファイルのサイズや更新日時なども表示したいところです。そのためにはls
コマンドにオプションを指定する必要があります。
コマンドのオプションと引数
先ほどの例ではls
コマンドを実行してもファイルとディレクトリの名前しか表示されませんでした。ファイルのサイズや更新日時などの情報も表示するには、ls
コマンドにオプションを付け足して実行します。コマンドラインからls
とタイプした後に、半角スペースを空けて続けて-l
と入力してエンターキーを押してください。
1
|
user1@host1:~$ ls -l合計 72-rw-rw-r-- 1 user1 user1 1371 4月 23 23:45 about.txt-rw-rw-r-- 1 user1 user1 154 4月 23 23:33 memo.txt-rw-r--r-- 1 user1 user1 32169 4月 24 00:45 sample.pngdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ダウンロードdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 テンプレートdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 デスクトップdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ドキュメントdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ビデオdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ピクチャdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ミュージックdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 公開user1@host1:~$
|
1行に1ファイル/ディレクトリずつの詳細な情報が表示されるようになります。表示される情報は左から順に、ファイルの種類とアクセス権、ハードリンク数、所有ユーザー、所有グループ、ファイルのサイズ、更新日時、ファイル名です。コマンドにオプションを付与することによって、コマンドの機能を拡張できたり、別の機能を実行することができます。コマンドによって異なる場合がありますが、ほぼ全てのコマンドでオプションはハイフン-
に続けて文字を入力します。ls
コマンドのオプションは他にも多くあります。ls
コマンドの実行結果の表示順はデフォルトではファイル/ディレクトリの名前順ですが、それだと目的のファイルを見つけるのに手間がかかる場合があります。そのような場合に-t
オプションを付与すると更新時間が新しい順に表示されます。そしてさらに-r
オプションは表示順を逆にする効果があります。複数のオプションを指定する場合にはハイフン-
の後にオプションの文字を続けて入力します。
1
|
user1@host1:~$ ls -ltr合計 72drwxr-xr-x 2 user1 user1 4096 4月 23 20:05 公開drwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ミュージックdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ピクチャdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ビデオdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ドキュメントdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 デスクトップdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 テンプレートdrwxr-xr-x 2 user1 user1 4096 4月 23 20:05 ダウンロード-rw-rw-r-- 1 user1 user1 154 4月 23 23:33 memo.txt-rw-rw-r-- 1 user1 user1 1371 4月 23 23:45 about.txt-rw-r--r-- 1 user1 user1 32169 4月 24 00:45 sample.pnguser1@host1:~$
|
-l
オプションと-t
オプションと-r
オプションをまとめて-ltr
と付与することで、更新時間がもっとも新しい物が最後に表示されるようになりました。最後に編集したファイルを探す場合には非常に便利です。さらに、コマンドにはオプションとは別にパラメータとして値(引数)を指定することができます。ls
の場合は引数としてファイル名を指定でき、そのファイルのみの情報を表示します。引数はオプションと同じようにコマンドの後に半角スペースを空けて入力します。
1
|
user1@host1:~$ ls memo.txtmemo.txtuser1@host1:~$
|
オプションと引数を同時に指定することも出来ます。-l
オプションと同時に使用するには以下のようにします。
1
|
user1@host1:~$ ls -l memo.txt-rw-rw-r-- 1 user1 user1 154 4月 23 23:33 memo.txtuser1@host1:~$
|
これだけは覚えたい基本のコマンド
ls
は非常によく使うコマンドですが、Linuxのシェルにはそれ以外にも多くのコマンドがあります。ここではその中から使用頻度が高いコマンドをいくつか紹介し、基本的な使い方を説明します。
cd
cd
コマンドは現在のディレクトリ(カレントディレクトリ)を変更します。コマンドラインで操作を行う場合には「コマンドを実行するディレクトリ」という概念が重要です。例えばls
コマンドを実行して表示されるのはls
コマンドを実行したディレクトリの内容です。コマンドを実行するディレクトリを起点としてファイルへのアクセスを行う形式をとる場合には、必要に応じてディレクトリを変更しなければなりません。cd
コマンドはそのような場合に使用します。cd
コマンドは引数にディレクトリのパスを指定して実行します。
1
|
user1@host1:~$ cd documentsuser1@host1:~/documents$
|
コマンドを実行しても何も表示されず、カレントディレクトリが変更されます。
pwd
pwd
コマンドはカレントディレクトリを表示します。オプションや引数は必要ありません。
1
|
user1@host1:~$ pwd/home/user1user1@host1:~$
|
コマンドラインにカレントディレクトリが表示されない環境でカレントディレクトリを確認したい場合や、シェルスクリプト内でカレントディレクトリを変数に保存する場合などに使用します。
cp
cp
コマンドはファイルのコピーを行います。引数にコピー元のファイルとコピー先のディレクトリを指定します。
1
|
user1@host1:~$ cp memo.txt documents/
|
デフォルトではコマンドを実行しても何も表示されません。コピーなので、元のファイルはそのままです。複数のファイルを一括でコピーすることや、オプションを指定してディレクトリごとコピーすることも出来ます。
mv
mv
コマンドはファイルを移動します。引数に元のファイルと移動先を指定します。実行すると元のファイルは削除されます。
1
|
user1@host1:~$ mv memo.txt documents/
|
デフォルトではコマンドを実行しても何も表示されません。例では移動先としてディレクトリを指定しているので、ファイルが別のディレクトリに移動することになりますが、移動先として新たなファイル名を指定することで、ファイルの名前変更ができます。
rm
rm
コマンドはファイルを削除します。引数に削除するファイルを指定します。
1
|
user1@host1:~$ rm memo.txt
|
デフォルトではコマンドを実行しても何も表示されません。複数のファイルを削除することや、オプションを指定することでディレクトリとその内容もすべて削除することができます。
コマンドの実行は慎重に
Linuxコマンドの実行方法といくつかのコマンドを紹介しました。この記事で紹介したコマンドはごく一部です。長いLinuxの歴史の中で作成されてきた様々なコマンドには機能の追加や設計の方針によりコマンドごとにオプションの指定の仕方が異なったり、複雑な指定が必要なものもあります。そのため、正しくオプションや引数を指定したつもりでも意図した動作にならないことがあります。この問題を解決するためには、そのコマンドを利用して覚えるしかありません。重要なサービスを提供しているサーバーで慣れないコマンドを実行することは、重大な障害を招く可能性があります。例えば、最後に紹介したrm
コマンドでファイル名を間違って、重要なファイルを削除してしまうかもしれません。そのような事態を起こさないためにも、まずは練習用の環境を作りそこでコマンドの使用方法を十分に調べてください。Linuxをより便利に活用するためには、コマンドを繰り返し使用し、その結果を確認することが必要です。
FEnetを運営しているネプラス株式会社はサービス開始から10年以上
『エンジニアの生涯価値の向上』をミッションに掲げ、
多くのインフラエンジニア・ネットワークエンジニアの就業を支援してきました。
ネプラス株式会社はこんな会社です
秋葉原オフィスにはネプラス株式会社をはじめグループのIT企業が集結!
数多くのエンジニアが集まります。

-
インフラ業界に特化
ネットワーク・サーバー・データベース等、ITインフラ業界に特化。Cisco Systemsプレミアパートナーをはじめ各種ベンダーのパートナー企業です。
業界を知り尽くしているからこそ大手の取引先企業、経験豊富なエンジニアに選ばれています。
-
正社員なのにフリーランスのような働き方
正社員の方でも希望を聞いたうえでプロジェクトをアサインさせていただいており、フリーランスのような働き方が可能。帰社日もありません。
プロジェクト終了後もすぐに次の案件をご紹介させていただきますのでご安心ください。
-
大手直取引の高額案件
案件のほとんどが大手SIerやエンドユーザーからの直取引のためエンジニアの皆様へに高く還元できています。
Ciscoをはじめ、Juniper、Azure、Linux、AWS等インフラに特化した常時300件以上の案件があります。
-
スキルアップ支援
不要なコストを削減し、その分エンジニアの方へのスキルアップ支援(ネットワーク機器貸出、合格時の受験費用支給など)や給与で還元しています。
受験費用例)CCNP,CCIE:6-20万円、JNCIS:3-4万円、AWS:1-3万円など
※業務に関連する一定の資格のみ。各種条件がありますので詳しくは担当者へにお尋ねください。
-
現給与を保証します!※
前職の給与保証しており、昨年度は100%の方が給与アップを実現。収入面の不安がある方でも安心して入社していただけます。
※適用にはインフラエンジニアの業務経験1年以上、等一定の条件がございます。
-
インセンティブ制度
ネットワーク機器の販売・レンタル事業等、売上に貢献いただいた方にはインセンティブをお支払いしています。
取引先企業とエンジニア側、双方にメリットがあり大変好評をいただいています。
-
社会保険・福利厚生
社員の方は、社会保険を完備。健康保険は業界内で最も評価の高い「関東ITソフトウェア健康保険組合」です。
さらに様々なサービスをお得に利用できるベネフィットステーションにも加入いただきます。
-
東証プライム上場企業グループ
ネプラスは東証プライム上場「株式会社夢真ビーネックスグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
ネプラス株式会社に興味を持った方へ
ネプラス株式会社では、インフラエンジニアを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
オンライン面接も随時受付中。ぜひお気軽にご応募ください。


Linux新着案件New Job
-
東京都中央区/【WEB面談可/インフラサーバ経験者/20~40代の方活躍中】/在宅ワーク
年収600万~600万円東京都中央区(小伝馬町駅) -
カー用品販売会社の情報システム運用/東京都千代田区/【WEB面談可/インフラサーバ経験者/20~40代の方活躍中】/テレワーク
年収576万~576万円東京都千代田区(水道橋駅) -
構築/東京都新宿区/【WEB面談可/インフラサーバ経験者/20~40代の方活躍中】/テレワーク
年収384万~384万円東京都新宿区(新宿駅) -
【高額年収】/ネットワークのセキュリティ機器の検証/東京都大田区/【WEB面談可】/在宅勤務/20代~40代の方活躍中
年収660万~660万円東京都大田区(蒲田駅) -
運用保守/Linux/東京都港区/【WEB面談可】/在宅勤務/20代~40代の方活躍中
年収600万~600万円東京都港区(新橋駅) -
【CCNA取得者歓迎】/海外モバイルネットワーク支援/Linux/東京都港区/【WEB面談可】/在宅勤務/20代~40代の方活躍中
年収624万~672万円東京都港区(三田駅)