編集部員(プログラマー)【初心者向け】シェルスクリプトとは?ツイートシェアはてブLINEPocket初心者シェルスクリプトって何?聞いたことはあるけどよく分かってないなぁ。この記事はそんな疑問に答えるために書きました。macOSやLinuxなどのターミナルで、同じ操作を何度も繰り返したいとき、大量のデータを処理したいとき、シェルスクリプトを作れば操作を減らして楽をすることができます。今回は、そんな便利なシェルスクリプトについて紹介します。目次シェル=殻?代表的なシェルスクリプト=台本?シェルスクリプトはプログラミング言語のひとつ書き方の例シェルスクリプトで楽をしようシェル=殻?そもそも、シェルとは何でしょうか?私たちのコンピュータは、オペレーティングシステムと呼ばれるソフトウェアによって管理されています。このオペレーティングシステムの内部には、ハードウェアとソフトウェアの仲立ちをしている「カーネル」(「核」という意味)という部分があります。カーネルはCPU、メモリー、ハードディスクなどさまざまなハードウェアに対して命令を出します。カーネルが出す命令は普通の人には難しくて理解できません。そこで、私たちのような普通の人でもカーネルが出す命令を扱えるように、分かりやすいコマンドがたくさん作られました。このコマンドをたくさん集めたものをシェルと呼んでいます。カーネル(核)を包むシェル(殻)、というわけです。代表的なシェルオペレーティングシステムがWindows、macOS、Linuxなどいろいろあるように、シェルにもいくつかの種類があります。代表的なシェルをご紹介します。最近のオペレーティングシステムに含まれているシェルの中では一番古いものです。AT&Tのベル研究所で開発されました。Bourneさんの名前にちなんで、Bourneシェル、Bシェルとも呼ばれています。ほとんどのUnix系オペレーティングシステムに含まれている標準的なシェルです。他のほとんどのシェルはこのBシェルの機能を踏襲して作られています。Joyさんによって開発されたもので、シェルスクリプトがプログラミング言語のC言語に似たスタイルで書けることから、この名前が付けられました。Bシェルをベースに作られたものですが、Bシェルと比べると、対話型で利用できるコマンドが多く含まれていて、より使いやすく、また少ないキー入力で使えるように改良されています。【tcsh】cshを改良したものです。ファイル名やコマンド名などを保管してくれる機能や、コマンドを複数行にわたって編集する機能など、さらに便利な機能が追加されています。現在も開発が継続されていて、およそ1年に1度の頻度で新しいバージョンが出ています。Linuxなど多くのオペレーティングシステムでcshを実行すると実際にはtcshが呼び出されるようになっています。shellの頭文字をとってBashと名付けられました。Cシェルと同様にBシェルをベースに作られていて、Bシェルのスタイルを踏襲しつつ、新しいコマンドやより複雑なシェルスクリプト構文などが追加されています。最近はmacOSや多くのLinuxディストリビューションで標準のシェルとして採用されています。ここで、シェルコマンドの例をいくつかご紹介します。せりふ」などの意味が載っています。コンピュータ用語の「スクリプト」は、さまざまな命令を順番に並べて書いたファイルのことです。スクリプトを実行すると、書かれた命令が順番に実行されます。お芝居や演劇などの台本に書かれたせりふが順番に読まれるのと同じですね。「シェルスクリプト」とは、シェルのコマンドを並べて書いたファイルのことです。シェルスクリプトはプログラミング言語のひとつプログラミング言語は、さまざまな命令を順番に並べて書くことによって、コンピュータの動作を作ることができるものです。シェルスクリプトもプログラミング言語のひとつと言えます。C、Java、Python、PHPといったメジャーなプログラミング言語は、文法や各種命令をたくさん覚えなければ動かすことができません。シェルスクリプトはとても簡単で、シェルのコマンドを上から順番に並べて書くだけで動きます。ちなみに、プログラミング言語は書いたものをいったん変換(コンパイル)する必要があるものと、書いたものがそのまま実行されるものの2種類に分けられますが、後者を「インタプリタ型言語」または「スクリプト言語」と呼びます。Python、PHP、Ruby、Perlなどの言語が代表的です。これらの言語で書かれたものを「Pythonスクリプト」「PHPスクリプト」「Rubyスクリプト」などと呼びます。書き方の例ここで、簡単なシェルスクリプトの例をご紹介します。-l1行目は、どのシェルを使用するか指定するものです。ここではBシェルを指定しています。2行目から4行目まではシェルコマンドを並べたものです。現在のフォルダ名を表示して、現在の日時を表示して、フォルダの内容をリスト表示する、という3つのコマンドです。シェルスクリプトを使わない場合はこの3つのコマンドを順番に実行する必要がありますが、このシェルスクリプトを実行するだけで3つのコマンドを順番に全部実行してくれます。いうファイル名で保存しておけば、次のように実行できます。-lコマンドの実行結果です。シェルスクリプトで楽をしよう上の例のように、コマンドをいくつも打たなければいけない場合や、その量が多い場合、何度も繰り返さなければいけない場合などに、シェルスクリプトを作るとその手間を省くことができます。作り方もとても簡単ですので、ぜひチャレンジしてみてください。コメントをキャンセルメールアドレスが公開されることはありません。*サイト上に表示された文字を入力してください。関連記事は見つかりませんでした。編集部員(プログラマー)現役プログラマーの編集部員です。このブログは複数の編集部員によって運営されています。おすすめの勉強法は?未経験からプログラマーに就職2020.2.18『今』プログラミング学習をおすすめする3つの理由JavaScript2020.2.11【初心者向け】TypeScriptって何?JavaScriptと何が違うの?職業訓練校2020.2.9未経験者が職業訓練でJAVAを学ぶプロフィールごま塩シンジ(編集長)30代後半、未経験からweb系企業に就職しました。底辺高校→Fランク大学→営業→PHPエンジニア→フリーランス※当サイトはリンクフリーです※当サイトは複数のプログラマーによって運営されています※広告募集中です。ご希望の方はお問い合わせからご連絡ください。最近のコメント初心者におすすめのプログラミング言語は何か。初心者におすすめのプログラミング言語は何か。初心者におすすめのプログラミング言語は何か。