Shell: ターミナルとBASH(初心者向け)ver. 3

BASHについて、Parul Pandey氏の大変わかりやすい解説がありましたので紹介します。プログラムをこれからはじめようという方のために、ターミナルの説明を加えて解説します。

 

Parul Pandey, Basics of BASH for Beginners.

 

I.ターミナルって?

 

プログラミングの勉強をRからはじめた場合は、あまり、ターミナルを開かなくてもよいかもしれません。しかし、Pythonからはじめるとターミナルを多用することになるでしょう。

Rでもいずれはターミナルを使うことになりますので、ターミナルについて知っておいてそんはありません。

MacのTerminal.appは、ApplicationのUtilitiesの中にあります。

 

 

Windowsのターミナルは、Command Promptです。

 

https://en.wikipedia.org/wiki/Cmd.exe

 

Windowsの場合、背景が黒で文字が白抜き文なので、「ちょっとこわい?」、「ハッカーぽい?」感じがして近づきがたい!?Macの場合もデフォルトは黒だったかな?

ターミナルでもコマント・プロンプトでも英数文字ばかりがならぶので、日頃のコンピュータ操作とまったく違う世界にきたように感じられるかもしれません。

しかし、基本的には、ふつうによく使っているファイル検索と同様の役割をしています。

MacならFinder、WindowsならExplorerでファイルを探しますよね。次は、MacのFinderの画面です。

 

 

ファイルやフォルダが見えていると、移動やコピーもマウスを使って簡単にできて大変便利です。

でも、例えば、100個のファイルの名前を変更しようとすると、たいそう時間がかかります。

ファイルの名前の変更だけではなくて、例えば、階層の深いところにあるファイルに1行書き加えるとか、プログラムを組んでファイルを一括操作することなどは、FinderやExploreのようなファイルやフォルダを見てマウスで操作するインターフェイス(Graphical User Inteface)ではできません。

これに対して、Command Line Interface、つまり、Macならターミナル、Windowsならコマンド・プロンプトを使えば、ファイルやフォルダを名で特定し操作を文字で書くことで、GUIではできな処理を行えます。

簡単に言えば、ファイルを探すときに使っているFinderやExploreの機能を英数文字で表現することによって機能を拡張したと考えればよいです。

 

II.Shellって?

 

Iで説明したターミナル、コマンド・プロンプトもFinderもExploreもShellを操作するものです。

で、Shellって?

コンピュータを購入するときには、CPUの性能がどれくらいかが一つの基準になりますよね。しかし、ふつう、わたしたちは直接CPUと関わることはありません。

CPUはコンピュータの「頭脳」で、どんなアプリケーションもCPUが処理しているのですが、アプリケーションも直接CPUとやりとりするわけではありません。

CPUは電源の切ると入るを0と1として計算するのですが、複雑なアプリケーションの動きを0と1に落とし込むのに、下の図のような段階を踏みます。段階を踏んだ方が広く応用できるからです。

大雑把な図ですが、CPUを中心にすると次のような感じになります。ターミナルは、このShellを操作する文字ベースのインターフェイスです。ちなみに、このアニメーションは、Inkscapeを学び始めた頃に練習で描いたものです。

 

 

次に簡単な説明があります。

 

What is the difference between a kernel, drivers, and shell?

 

III.ターミナルの使い方

 

1.Bashコマンドの書き方

 

Macのターミナルを起動すると次の画面になります。コマンドは、$のあとに書き込みます。例えば、現在の作業ディレクトリを調べる場合はpwdと書いてEnterを押します。

 

次に、$の後にlsと書いてEnterを押します。ホームディレクトリにある下位のディレクトリやファイルの名のリストが表示されます。

 

 

ややこしそうですが、いつも見ているFinderのホームと同じ内容です。表示の順番が違いますが、同じ名前が見えるはずです。

 

 

他にも多くのコマンドがありますが、Pythonのプログラムを学び始めたところなら、必要な場合に参照する程度十分です。コマンドの詳細は冒頭にリンクした解説をみてください。

 

2.Condaコマンドの書き方

 

Macの場合、ターミナルを開くとBashコマンドを利用できる状態です。

Pythonでは、ふつう、ターミナルを使ってパッケージ(ライブラリ)をインストールしますが、パッケージ管理にはpipを使います。pipはPythonに同梱されています。

pipを用いてもよいのですが、Anacondaをインストールしている場合は、pipに加えてcondaも使用できます。私は、まずcondaでイントールします。インストールに失敗する場合は、pipでインストールしています。

Anacondaをインストールする理由は、仮想環境が作りやすいとか、よく使うライブラリがはじめからインストールされているとか、Anaconda Navigatorを使えるなどです。

最近は、condaの手順を書いている解説も多いので、特に初心者はAnacondaをインストールして、condaを使用した方がパッケージや仮想環境を管理しやすいと思います。

condaコマンドを呼び出すのは簡単です。例えば、conda listを実行するとインストールされているパッケージ名のリストを表示します。1のBashのlsに似ていますが、lsはディレクトリ名とファイル名のリストを表示するものですが、conda listはPythonで使用できるパッケージ名のリストを表示します。

 

 

condaでパッケージをインストールするコマンドは、Anaconda Cloudで見つけることができます。パッケージ名で探し、コマンドをコピーし、ターミナルにペースとして実行します。

例えば、seabornのパッケージをインストールするには、次のコマンドを実行します。

 

conda install -c conda-forge seaborn  

 

 

to be continued

Please follow and like us:
error

About shibatau

I was born and grown up in Kyoto. I studied western philosophy at the University and specialized in analytic philosophy, especially Ludwig Wittgenstein at the postgraduate school. I'm interested in new technology, especially machine learning and have been learning R language for two years and began to learn Python last summer. Listening toParamore, Sia, Amazarashi and MIyuki Nakajima. Favorite movies I've recently seen: "FREEHELD". Favorite actors and actresses: Anthony Hopkins, Denzel Washington, Ellen Page, Meryl Streep, Mia Wasikowska and Robert DeNiro. Favorite books: Fyodor Mikhailovich Dostoyevsky, "The Karamazov Brothers", Shinran, "Lamentations of Divergences". Favorite phrase: Salvation by Faith. Twitter: @shibatau

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.