Raspberry PiをターミナルやSSHで操作する際に、覚えておきたいコマンドをまとめました。
標準Linux OS「Raspbian」で使用可能なコマンドを対象としますが、その多くは他のLinuxやUnixでも使えます。
今回はLinuxがはじめての方にもわかりやすいように、関連する基礎知識も併せて解説しています。
各コマンドでは使用頻度の高いオプションのみを紹介していますので、より詳しく知りたいコマンドについては「man」や書籍、他のWebサイトなどでご確認ください。
最初に覚えておきたいコマンド
sudo:管理者権限でのコマンド実行
指定したコマンドを、管理者ユーザー(root)として実行します。
システム全体に影響のあるコマンドを実行する際、一般ユーザーでは権限が足りない場合に使用します。
一般ユーザー「pi」では、このコマンドがないとシャットダウンもできません。
書式
$ sudo 実行するコマンド
※行頭の「$」はコマンド入力を表しています。キーボードで「sudo」以降を入力してください。
使用例
sudoの設定ファイルを確認
$ sudo cat /etc/sudoers # # This file MUST be edited with the 'visudo' command as root. # # Please consider adding local content in /etc/sudoers.d/ instead of # directly modifying this file. 以下省略
sudoなしの場合(ファイルへのアクセス権がないためエラー)
$ cat /etc/sudoers cat: /etc/sudoers: 許可がありません
管理者権限が必要なコマンドは、行頭の文字(プロンプト)を「$」ではなく「#」と表記するのが一般的です。
このようなコマンドはsudoと共に入力するか、後述の「su」コマンドでrootに切り替えてから入力してください。
※sudoは別のユーザーとして実行するコマンドですが、ユーザーを指定しない場合はrootになります。
su:ユーザーの切替
「sudo」は一時的に管理者権限が必要な場合に便利ですが、そのようなコマンドを連続で入力する際は少々面倒です。 「su」コマンドでは指定したユーザーに切り替えることができます。(ユーザー名の省略時はroot)
書式
$ su ユーザー名
使用例
$ su パスワード: ←rootのパスワードを入力 root@raspberrypi:/home/pi#
※rootのパスワードは「sudo passwd root」で設定しておく必要があります。
rootに切り替わり、プロンプトが「#」になりました。以降入力するコマンドはrootとして実行されます。
「exit」コマンドで元のユーザーに戻ります。
man:コマンドの使用方法を調べる
各コマンドのマニュアルを表示して使用方法を調べることができます。
書式
$ man 調べたいコマンド
使用例
「su」コマンドを調べる
$ man su
- [Space] 次のページを表示
- [q] マニュアルを閉じる
ページ単位の表示には「less」が使用されています。 詳しい操作方法は「man less」で確認してみてください。
電源操作
halt:シャットダウン
書式
# halt
使用例
$ sudo halt
「shutdown -h now」と同義。
※コマンド実行後、Raspberry Piの電源が切れる状態になります。 電源の赤LEDの隣にある緑LED(ファイルアクセス)が点滅していないことを確認し、電源ケーブルを外します。
reboot:再起動
書式
# reboot
使用例
$ sudo reboot
「shutdown -r now」と同義。
ディレクトリ操作
pwd:カレントディレクトリの表示
現在の作業ディレクトリを表示します。 Windowsで例えるとエクスプローラーで開いているフォルダーです。
各コマンドでディレクトリの指定を省略した場合、カレントディレクトリが対象となります。
書式・使用例
$ pwd
/home/pi
ログイン直後のカレントディレクトリは、ユーザーのホームディレクトリです。
cd:カレントディレクトリの移動
カレントディレクトリを移動します。移動先ディレクトリには2種類の指定方法があります。
書式
$ cd 移動先ディレクトリ
絶対パス指定
絶対パス(フルパス)では、最上位のルートディレクトリ「/」からの階層をすべて指定します。 カレントディレクトリの位置に関係なく移動できます。
エクスプローラーのアドレスバーに、パスを直接入力して移動するイメージです。
使用例
ホームディレクトリへ移動
$ cd /home/pi $ pwd /home/pi
ホームディレクトリは「~」(チルダ。[¥]キーの左隣 + [Shift])でも指定できます。
$ cd ~ $ pwd /home/pi
「cd」のみでもホームディレクトリに移動できます。
$ cd $ pwd /home/pi
相対パス指定
カレントディレクトリからの相対的なパスを指定する方法です。 絶対パスと異なり、カレントディレクトリの位置によって移動先が変わります。
エクスプローラーで開いているフォルダーから、別のフォルダーを選択して開くイメージです。
使用例
ホームディレクトリから「Documents」へ移動
$ cd $ cd Documents $ pwd /home/pi/Documents
※Linuxは大文字・小文字を区別するため「documents」はエラーになります。
ディレクトリやファイル名は、途中まで入力して[Tab]キーを押すと残りを補完できます。
カレントディレクトリは「.」(ドット)で指定することもできます。
$ cd $ cd ./Documents $ pwd /home/pi/Documents
「..」(ドット2つ)を指定すると、1つ上のディレクトリに移動できます。
$ cd $ cd .. $ pwd /home
ここで紹介したパスの指定方法は、他のコマンドでも使用できます。
ls:ディレクトリ一覧の表示
ディレクトリ、ファイルの一覧を表示します。 対象の省略時はカレントディレクトリの内容が表示されます。
書式
$ ls [オプション] 対象ディレクトリまたはファイル
使用例
カレントディレクトリ(ホームディレクトリ)内を表示
$ cd $ ls Desktop Downloads Pictures Scratch Videos Documents Music Public Templates python_games
オプション「a」で隠しファイル・ディレクトリ(.で始まる)も表示
$ cd $ ls -a . .cache .thumbnails Public .. .config .xsession-errors Scratch 以下省略
オプション「l」で詳細表示
$ ls -l /home/pi 合計 52 drwxr-xr-x 2 pi pi 4096 5月 11 08:51 Desktop drwxr-xr-x 5 pi pi 4096 3月 26 14:33 Documents 以下省略
行頭の「d」はディレクトリを表し、ファイルの場合は「-」になります。
続く3文字「rwx」は所有者(pi)のアクセス権です。この場合は「r」読み取り、「w」書き込み、「x」実行のすべてが可能です。
中央はグループユーザー、右側はその他のユーザーのアクセス権です。「r-x」のため、書き込みは行えません。
続いて、格納ディレクトリ数、所有者、グループ、サイズ、更新日時、名前が表示されます。
mkdir:ディレクトリの作成
書式
$ mkdir [オプション] ディレクトリ
使用例
ホームディレクトリに「newdir1」を作成
$ cd $ mkdir newdir1 $ cd newdir1 $ pwd /home/pi/newdir1
オプション「p」を付けると、途中のディレクトリがない場合でも自動的に作成されます。
$ cd $ mkdir -p newdir2/newdir2a $ cd newdir2/newdir2a $ pwd /home/pi/newdir2/newdir2a
cp -r:ディレクトリのコピー
「cp」はファイルをコピーするコマンドですが、オプション「r」を付けることで、ディレクトリとその中身をコピーできます。
書式
$ cp -r コピー元 コピー先
使用例
ホームディレクトリの「newdir1」を「cpdir1」にコピー
$ cd $ cp -r newdir1 cpdir1 $ cd cpdir1 $ pwd /home/pi/cpdir1
コピー先のディレクトリが既に存在する場合は、その中にコピーされます。
$ cd $ cp -r newdir1 cpdir1 $ cd cpdir1/newdir1 $ pwd /home/pi/cpdir1/newdir1
コピー先の有無で結果が変わるので要注意です。
mv:ディレクトリの移動・名前の変更
書式
$ mv 移動元 移動先
使用例
ホームディレクトリの「cpdir1」を「mvdir1」にリネーム
$ cd $ mv cpdir1 mvdir1 $ cd cpdir1 -bash: cd: cpdir1: そのようなファイルやディレクトリはありません $ cd mvdir1 $ pwd /home/pi/mvdir1
「cp」コマンドと同様、移動先のディレクトリが既に存在する場合はその中に移動されます。
$ cd $ mv mvdir1 newdir2 $ cd mvdir1 -bash: cd: mvdir1: そのようなファイルやディレクトリはありません $ ls newdir2 mvdir1 newdir2a
rm -r:ディレクトリの削除
「rm」はファイルを削除するコマンドですが、オプション「r」を付けることで、ディレクトリとその中身を削除できます。
書式
$ rm -r ディレクトリ
使用例
ホームディレクトリの「newdir2」を削除
$ cd $ rm -r newdir2 $ cd newdir2 -bash: cd: newdir2: そのようなファイルやディレクトリはありません
ファイル操作
cat:ファイル内容の表示
指定したファイルの内容を表示します。 「concatenate」の略で、複数のファイルを指定した場合は連結した結果を表示します。
書式
$ cat ファイル1 ファイル2 ...
使用例
$ cat /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback 以下省略
nano:テキストエディタの起動
「nano」はRaspbianに標準で搭載されているテキストエディタです。 操作が簡単なため、はじめての方にもおすすめです。
書式
$ nano ファイル
※ファイルが存在しない場合は、新規作成となります。
使用例
ホームディレクトリに「new.txt」を作成
$ cd
$ nano new.txt
「nano」が起動し、すぐにテキストが入力できる状態になります。
[Enter]で改行、方向キーでカーソル移動ができます。
操作方法は画面下部に表示されており、[Ctrl]と他のキーを同時に押します。
ファイルの保存:[Ctrl]+[O]
保存先のファイル名が表示されます。 必要な場合は変更し、[Enter]で保存されます。
nanoの終了:[Ctrl]+[X]
未保存の変更がある場合は処理方法を応答します。
- [Y] 保存して閉じる(ファイル名を確認し[Enter])
- [N] 保存せずに閉じる
- [Ctrl]+[C] nanoの終了をキャンセル
cp:ファイルのコピー
書式
$ cp コピー元 コピー先
使用例
$ cd
$ cp new.txt cp.txt
$ cat new.txt
nanoを使うと、テキストファイルの作成・編集が簡単に行えます。
$ cat cp.txt
nanoを使うと、テキストファイルの作成・編集が簡単に行えます。
mv:ファイルの移動・名前の変更
書式
$ mv 移動元 移動先
使用例
$ cd $ mv cp.txt mv.txt $ cat cp.txt cat: cp.txt: そのようなファイルやディレクトリはありません $ cat mv.txt nanoを使うと、テキストファイルの作成・編集が簡単に行えます。
rm:ファイルの削除
書式
$ rm ファイル
使用例
$ cd $ rm mv.txt $ cat mv.txt cat: mv.txt: そのようなファイルやディレクトリはありません
まとめ
以上のコマンドを覚えておくと、デスクトップ(GUI)なしでもRaspberry Piの基本操作をひと通り行えると思います。
他のLinux・Unixでも基本的に使用できるため、仕事にもきっと役立ちます。