ネプラスのテックブログ。ネットワーク、クラウド、サーバなどのITインフラ情報を中心に発信中。

  1. ネプラス インフラエンジニア採用
  2. テックマガジン
  3. サーバー
  4. Linuxコマンドとは?実行方法と基本のコマンドを紹介

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

  • サーバー
  • テクノロジー
公開日時:   更新日時:
Linuxコマンドとは?実行方法と基本のコマンドを紹介
この記事でわかること
    基本情報技術者試験の試験対策はこちら>>

    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です。本記事ではディストリビューションに依らない説明をしますが、一部のコマンド実行結果などの表示は環境により異なる場合があります。ご了承ください。

    コマンドの入力と実行

    前置きが長くなりましたが、さっそくコマンドを実行してみましょう。ターミナルアプリケーションなどでアクセスし、シェルが起動すると以下のような画面が表示されているでしょう。

    これはコマンドラインと呼ばれるものです。$などの記号の後にキーボードからコマンドを入力できるようになっています。user1@host1:~の部分はユーザー名@コンピューター名:現在のディレクトリと言う意味で表示されていますが、環境や設定によって異なります。このコマンドラインに対してキーボードからlsと入力してエンターキーを押してみてください。

    これでlsコマンドの実行が完了しました。lsはディレクトリの内容を表示するコマンドです。上記の例ではユーザーuser1のホームディレクトリ内にある"memo.txt"のようなテキストファイルやPNG画像ファイル、"ドキュメント"などのディレクトリ名が表示されています。コマンドラインにキーボードからコマンドの文字列をタイプしてエンターキーを押す。これがコマンドを実行する方法です。さて、上記のディレクトリ内容の表示ですがファイル名やディレクトリ名などの名前しか表示されておらず、情報が少ないです。ファイルのサイズや更新日時なども表示したいところです。そのためにはlsコマンドにオプションを指定する必要があります。

    コマンドのオプションと引数

    先ほどの例ではlsコマンドを実行してもファイルとディレクトリの名前しか表示されませんでした。ファイルのサイズや更新日時などの情報も表示するには、lsコマンドにオプションを付け足して実行します。コマンドラインからlsとタイプした後に、半角スペースを空けて続けて-lと入力してエンターキーを押してください。

    1行に1ファイル/ディレクトリずつの詳細な情報が表示されるようになります。表示される情報は左から順に、ファイルの種類とアクセス権、ハードリンク数、所有ユーザー、所有グループ、ファイルのサイズ、更新日時、ファイル名です。コマンドにオプションを付与することによって、コマンドの機能を拡張できたり、別の機能を実行することができます。コマンドによって異なる場合がありますが、ほぼ全てのコマンドでオプションはハイフン-に続けて文字を入力します。lsコマンドのオプションは他にも多くあります。lsコマンドの実行結果の表示順はデフォルトではファイル/ディレクトリの名前順ですが、それだと目的のファイルを見つけるのに手間がかかる場合があります。そのような場合に-tオプションを付与すると更新時間が新しい順に表示されます。そしてさらに-rオプションは表示順を逆にする効果があります。複数のオプションを指定する場合にはハイフン-の後にオプションの文字を続けて入力します。

    -lオプションと-tオプションと-rオプションをまとめて-ltrと付与することで、更新時間がもっとも新しい物が最後に表示されるようになりました。最後に編集したファイルを探す場合には非常に便利です。さらに、コマンドにはオプションとは別にパラメータとして値(引数)を指定することができます。lsの場合は引数としてファイル名を指定でき、そのファイルのみの情報を表示します。引数はオプションと同じようにコマンドの後に半角スペースを空けて入力します。

    オプションと引数を同時に指定することも出来ます。-lオプションと同時に使用するには以下のようにします。

    これだけは覚えたい基本のコマンド

    lsは非常によく使うコマンドですが、Linuxのシェルにはそれ以外にも多くのコマンドがあります。ここではその中から使用頻度が高いコマンドをいくつか紹介し、基本的な使い方を説明します。

    cd

    cdコマンドは現在のディレクトリ(カレントディレクトリ)を変更します。コマンドラインで操作を行う場合には「コマンドを実行するディレクトリ」という概念が重要です。例えばlsコマンドを実行して表示されるのはlsコマンドを実行したディレクトリの内容です。コマンドを実行するディレクトリを起点としてファイルへのアクセスを行う形式をとる場合には、必要に応じてディレクトリを変更しなければなりません。cdコマンドはそのような場合に使用します。cdコマンドは引数にディレクトリのパスを指定して実行します。

    コマンドを実行しても何も表示されず、カレントディレクトリが変更されます。

    pwd

    pwdコマンドはカレントディレクトリを表示します。オプションや引数は必要ありません。

    コマンドラインにカレントディレクトリが表示されない環境でカレントディレクトリを確認したい場合や、シェルスクリプト内でカレントディレクトリを変数に保存する場合などに使用します。

    cp

    cpコマンドはファイルのコピーを行います。引数にコピー元のファイルとコピー先のディレクトリを指定します。

    デフォルトではコマンドを実行しても何も表示されません。コピーなので、元のファイルはそのままです。複数のファイルを一括でコピーすることや、オプションを指定してディレクトリごとコピーすることも出来ます。

    mv

    mvコマンドはファイルを移動します。引数に元のファイルと移動先を指定します。実行すると元のファイルは削除されます。

    デフォルトではコマンドを実行しても何も表示されません。例では移動先としてディレクトリを指定しているので、ファイルが別のディレクトリに移動することになりますが、移動先として新たなファイル名を指定することで、ファイルの名前変更ができます。

    rm

    rmコマンドはファイルを削除します。引数に削除するファイルを指定します。

    デフォルトではコマンドを実行しても何も表示されません。複数のファイルを削除することや、オプションを指定することでディレクトリとその内容もすべて削除することができます。

    コマンドの実行は慎重に

    Linuxコマンドの実行方法といくつかのコマンドを紹介しました。この記事で紹介したコマンドはごく一部です。長いLinuxの歴史の中で作成されてきた様々なコマンドには機能の追加や設計の方針によりコマンドごとにオプションの指定の仕方が異なったり、複雑な指定が必要なものもあります。そのため、正しくオプションや引数を指定したつもりでも意図した動作にならないことがあります。この問題を解決するためには、そのコマンドを利用して覚えるしかありません。重要なサービスを提供しているサーバーで慣れないコマンドを実行することは、重大な障害を招く可能性があります。例えば、最後に紹介したrmコマンドでファイル名を間違って、重要なファイルを削除してしまうかもしれません。そのような事態を起こさないためにも、まずは練習用の環境を作りそこでコマンドの使用方法を十分に調べてください。Linuxをより便利に活用するためには、コマンドを繰り返し使用し、その結果を確認することが必要です。

    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%現給与保証

      前職の給与保証しており、昨年度は100%の方が給与アップを実現。収入面の不安がある方でも安心して入社していただけます。

      ※適用にはインフラエンジニアの業務経験1年以上、等一定の条件がございます。

    • インセンティブ制度

      インセンティブ制度

      ネットワーク機器の販売・レンタル事業等、売上に貢献いただいた方にはインセンティブをお支払いしています。

      取引先企業とエンジニア側、双方にメリットがあり大変好評をいただいています。

    • 社会保険・福利厚生

      社会保険・福利厚生

      社員の方は、社会保険を完備。健康保険は業界内で最も評価の高い「関東ITソフトウェア健康保険組合」です。

      さらに様々なサービスをお得に利用できるベネフィットステーションにも加入いただきます。

    • 東証プライム上場企業グループ

      東証プライム上場企業グループ

      ネプラスは東証プライム上場「株式会社夢真ビーネックスグループ」のグループ企業です。

      安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。

    ネプラス株式会社に興味を持った方へ

    ネプラス株式会社では、インフラエンジニアを募集しています。

    年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
    オンライン面接も随時受付中。ぜひお気軽にご応募ください。

    ネプラス株式会社へのご応募はこちら↓
    ネプラス株式会社へのご応募はこちら↓

    Linux新着案件New Job

    CCNA取得者歓迎!案件・求人はこちら