ターミナル

ユーザーはコンピュータ上のターミナル(もしくはコマンドライン)で システム(この場合はラズベリーパイ)上の多くの制御を行うことができます。 WindowsユーザーであればコマンドプロンプトPowerShell が思い浮かぶかも知れず、Mac OSユーザーであればMacのターミナルについて知っているかも知れません。 これらのツールでは全て、ユーザーがコマンドを使用してシステムを操作することができます。 これらのコマンドはつなげたり組み合わせたりして複雑なスクリプト(Linuxの使い方のスクリプトのページを参照してください)にすることができ、 これまでのずっと大きなサイズのソフトウェアパッケージよりも効率的にタスクを完了できる可能性を秘めています。

LXTerminalを始める

ラズベリーパイ(Raspbianが動作している)では、デフォルトのターミナルアプリケーションはLXTerminalです。 これは「ターミナルエミュレータ」として知られており、 古いスタイルのターミナル(グラフィカルユーザーインターフェースが開発される前からの)を グラフィカル環境上でエミュレートします。 このアプリケーションはラズベリーパイのデスクトップに置かれており、 起動すると次のように見えます。

次のようなプロンプトが見えるはずです。

pi@raspberrypi ~ $

ラズベリーパイのホスト名と、あなたのユーザー名を表示しています。 ここでは、ユーザー名はpiでホスト名はraspberrypiです。

では、何かコマンドを実行してみましょう。 pwd(present working directory)と入力して、Enterキーを押してください。 これにより/home/piなどのように表示されるでしょう。

ラズベリーパイ内の移動

ターミナルを使用することの重要な側面の1つとして、ファイルシステム内を移動できるようになるということがあります。 始めに、コマンドls -laを実行してください。 次のようなものが表示されるはずです。

lsコマンドは現在のディレクトリ(present working directory)内のコンテンツをリスト表示します。 コマンド内の-laという要素は「フラグ」として知られているものです。 フラグは実行されるコマンドの動作に変更を加えます。 今回の場合、lはリストされるディレクトリ内のコンテンツを、 サイズと最終更新日の情報とともに表示します。 そしてaはドットファイルとして知られる.で始まるファイル を含む全てのファイルを表示します。 ドットファイルはソフトウェアの設定ファイルとして使用され、テキストで記述されており、 編集することで簡単に変更することができます。

他のディレクトリに移動するためには、ディレクトリを変更するコマンドcdを使用します。 ある特定のディレクトリに「絶対パス」と「相対パス」のどちらかを使用して移動することができます。 例えば、python_gamesディレクトリに移動したい場合には、 cd /home/pi/python_gamesか単にcd python_games (もし現在のディレクトリが/home/piであれば)とすることができます。 特別な場合には便利な短縮が使用できます。 ~はホームディレクトリの別名として機能し、 ~/python_games/home/pi/python_gamesと同じものを指します。 ...はそれぞれ、現在のディレクトリと親ディレクトリを示します。 例えば、現在/home/pi/python_gamesにいる場合、 cd ..によって/home/piに移動します。

履歴とオートコンプリート

全てのコマンドを入力する代わりに、キーボードのキーを 押すことで、前回のコマンドをスクロールすることできます。 コマンドの一部としてファイルやディレクトリの名前を書いている途中に tabキーを押すと、入力しようとしている名前がオートコンプリートされます。 例えば、ディレクトリ内にaLongFileNameと呼ばれるファイルがあるとして、 aを入力した後にtabを押すと、aで始まる全てのファイルとディレクトリ名 の中から選択することができ、aLongFileNameを選ぶことができます。

SUDO

システムの状態に永続的な変更をもたらすコマンドはルート権限で実行することが要求されます。 sudoコマンドはあなたのアカウントに、(もしまだルート権限でログインしていないのであれば) 一時的にこれらのコマンドを実行する権限を与えます。 条件としては、あなたのユーザー名が「sudoers」にリストされていることが必要です。 コマンドの先頭にsudoを加えてEnterを押すと、 パスワードが尋ねられます。 パスワードを正しく入力すると、コマンドがルート権限で実行されます。 しかしながら、sudoを要求するコマンドはシステムに取り返しのつかないダメージを 与えることがありますので、気を付けてください。

sudoとルートユーザーに関するさらなる情報についてはLinuxルートのページを参照してください。

APT-GETを通してのソフトウェアのインストール

Piストアから新しいソフトウェアをダウンロードする代わりに、 apt-getコマンドを使用することができます。 これはDebianベースのLinuxディストリビューション(Raspbianを含む)に 含まれている「パッケージマネージャ」です。 ラズベリーパイ上のソフトウェアパッケージのインストールと管理をすることができます。 新しいパッケージをインストールするためにはsudo apt-get install < パッケージ名 > (ここでの< パッケージ名 >とはインストールしたいパッケージのこと)を入力します。 sudo apt-get updateはあなたのシステム上で利用可能な ソフトウェアパッケージのリストをアップデートします。 もし新しいバージョンのパッケージが利用可能な場合には、 sudo apt-get upgradeが古いパッケージを新しいバージョンにアップグレードしてくれるでしょう。 最後に、sudo apt-get remove < パッケージ名 >で システム上からパッケージを削除もしくはアンインストールします。

これについてのさらなる上はLinuxでのaptの使い方を参照してください。

その他の便利なコマンド

  • cpはファイルのコピーを作成し、特定の場所に置きます(コピーペーストと同じ)。 例えば、cp file_a /home/other_user/は、 ファイルfile_aをホームディレクトリから別のユーザーのディレクトリ other_userにコピーします(コピーするパーミッションを与えられているものと仮定します)。 もし移動先がフォルダであれば、ファイル名はそのままになりますが、 移動先がファイル名であればファイルにその新しい名前を与えます。
  • mvはファイルを移動して、特定の場所に置きます (cpがコピーペーストとして働くのに対し、mvはカットペーストとして働く)。 使い方はcpと似ており、mv file_a /home/other_user/は、 file_aをホームディレクトリから別のユーザーのディレクトリに移動します。 mvもまた、ファイルをリネームするのに使用されます。 つまり、ファイルをmv hello.txt story.txtのように新しい場所に移動します。
  • rmは特定のファイル(-rとともに使ったときはディレクトリを)を削除します。 警告:この方法で削除されたファイルは一般的には復元できません。
  • mkdirは新しいディレクトリを作成します。例えば、mkdir new_dirnew_dirというディレクトリを現在の作業ディレクトリに作成します。
  • catはファイルの中身を表示します。 例えば、cat some_filesome_fileの中身を表示します。

その他の役に立つコマンドはコマンドページで見つけることができます。

コマンドについて調べる

ある特定のコマンドについてさらなる情報を手に入れたい場合は、manに続けて、 知りたいコマンドを入力してください(例えば、man ls)。 そのコマンドの、フラグとその効果についての情報を含む、man-page(マニュアルページ)が表示されます。 man-pageには使用例が載っているものもあります。

このページについて

このページはラズベリーパイ財団が権利を保有するRaspberry Pi Documentation五十嵐システムズが日本語訳したものです。
Creative Commons Attribution 4.0 International Licenceのもとで公開されております。
原文はhttps://github.com/raspberrypi/documentationの成果によって作成されています。

なお、このページは2015年6月に翻訳しており、それ以後の更新内容は翻訳に反映していないため、内容が原文とは異なる場合があります。