前回の第6回 Raspberry Piでのスクリーンショット保存方法で少しだけ触れた CLI環境について今回は勉強していきます! 今回のコマンド実行ができるようになると、Raspberry Pi以外のLinux端末でも同じように操作ができるようになるので、きっと役に立つはずです!
CLI環境とは?
CLIはCommand Line Interface
の略です。
私たちが普段使っているアイコンをクリックするとアプリケーションが立ち上がってくるようなグラフィカルな環境をGUI(Graphical User Interface)環境と言うのに対し、
テキストのみで操作できる環境をCLI環境と言います。
…言葉だけではいまいちイメージが湧きませんね。
前回操作した以下のような環境のことを言います。
アイコンなどはなく、文字が並ぶ画面になります。
Raspberry Piは一般的なパソコンと比べると非力なマシンなので、GUI環境では処理が重くなりがちです。そのような場合は処理の軽いCLIで処理するとGUIよりも処理が速く、便利です。
CLI操作の始め方
CLIで操作をするには主に
* 端末アプリ(LXTerminal)
* コンソール
を使用する方法があります。
「端末アプリ」はデスクトップを利用している際に、コマンド操作を実行するためのアプリです。以下の方法で「端末アプリ」を起動することでウィンドウ内にコマンドプロンプトが表示され、コマンドを実行することができます。
1. デスクトップ上のタスクバーの黒いアイコンをクリック
2. タスクバーのRaspberry Piアイコンをクリックして
「アクセサリ」→「LXTerminal」の順に選択
1の場合
2の場合
一方でコンソールは、グラフィカルなデスクトップを使わずに画面全体を文字だけで表示して操作する方法です。表示されるコマンドプロンプトの後に実行したいコマンドを入力しながら操作します。
コンソールに切り替えるには、デスクトップ環境の操作時に
Ctl
キーとAlt
キーを同時に押した状態でF1
からF6
のいずれかのキーを押下します。
以下のようにlogin:
が表示されるので、ユーザー名とパスワードを入力します。
(※Raspberryの初期設定の際に指定した値です。詳細は第4回 Raspberry PiのOSをインストールしよう!(後編)を参照。)
ログインが成功すると以下のような表示になり、操作が可能となります。
デスクトップ画面に戻る場合には
Ctl
キーとAlt
キーを同時に押した状態でF7
キーを押下します。
コマンドの基礎知識
コマンドプロンプト
コンソールや端末アプリの画面で、コマンド入力できる状態になっている際に表示されている文字列をコマンドプロンプト といいます。 コマンドプロンプトの構造は以下のようになっています。
コマンドプロンプトには、現在の状況を表す情報が表示されています。左から、 「ログインユーザー名」@「ホスト名」「現在作業中のフォルダ(カレントディレクトリ)」「プロンプト記号」が表示されます。 カレントディレクトリに「~(チルダ)」で表示されている場合は、そのユーザーのホームフォルダ(ユーザーが自由に利用できるフォルダ)で作業中であることを示しています。コマンドプロンプトの最後に「$」が表示されていれば、この後にキーボードから実行したいコマンドを入力することができます。
コマンドの名前
コマンドには機能ごとに名前(コマンド名)がついています。
コマンド名を指定するとそのコマンドが実行され、Raspberry Pi内で処理されて画面にコマンドの結果が表示されます。
例えば、カレントフォルダにどのようなファイルやフォルダが存在するかを確認するにはls
というコマンドを実行します。
オプション
各コマンドではより詳しい情報を得たり、拡張機能を利用したりできます。
例えば、先ほどのls
コマンドにはフォルダにあるファイルについて、更新日時や容量といったより詳しい情報を得ることができる機能が搭載されています。
このようなコマンドの拡張機能を利用するために指定するのがオプションです。オプションはコマンドの後に記号や文字列で指定します。
ls
コマンドでファイルのより詳しい情報を得る場合にはls
のあとに-l
を指定します。
繋げると以下のようなコマンドです。
ls -l
このときls
と-l
の間にはかならずスペースを入力します。
オプションは-l -n
のようにスペースで区切りながら複数指定したり、-lh
のようにアルファベット部分を続けて指定したりもできます。
さらにオプションの中にはより長い文字列と組み合わされる場合もあります。長い文字列のオプションには一般的に--
がオプションの頭に付与されます。
例えば-ls
は--format=long
とも記述ができます。
Linuxで利用できる主要なコマンド
コマンド | 用途 | 使用例 |
---|---|---|
pwd | 現在のフォルダ(カレントディレクトリ)の場所を表示 | pwd |
cd フォルダ | 指定したフォルダへ移動 | cd images |
ls | 現在のフォルダ内にあるファイルやフォルダの一覧を表示 | ls |
mv ファイル1 ファイル2 | ファイル1の名前をファイル2に変更 | mv old.txt new.txt |
mv ファイル フォルダ | 指定したファイルをフォルダ内に移動 | mv target.txt folder |
cp ファイル1 ファイル2 | ファイル1をファイル2として複製 | cd file1.txt file2.txt |
cp -r フォルダ1 フォルダ2 | フォルダ1をフォルダ2として複製 | cd -r folder1 folder2 |
rm ファイル | 指定したファイルを削除 | rm file |
rm -rf フォルダ | 指定したフォルダを削除 | rm -rf folder |
mkdir フォルダ | 指定したフォルダを新規作成 | mkdir folder |
ls -s ファイル1 ファイル2 | ファイル1をファイル2としてリンク作成 | ls -s /usr/share/file linkfile |
find フォルダ -name ファイル名 | 指定したファイルを指定フォルダ内から検索 | find /home -name file.txt |
cat ファイル | 指定したファイル内の内容を表示 | cat text.txt |
less ファイル | 指定したファイルをカーソルキ-を使いながら閲覧 | less file |
grep "検索文字列" ファイル | 指定したファイルから文字列を検索 | grep "Raspberry" file.txt |
nano ファイル | 指定したファイルを編集 | nano text.txt |
chmod モードファイル | 指定したファイルについて、許可する操作(読み込み,書き出し,実行)を指定 | chmod +x cmdfile |
chown ユーザー ファイル | ファイル所有者の変更 | chown pi file |
ps | 現在実行中のプロセスを一覧表示 | ps |
ps ax | 現在実行中の全てのプロセスを一覧表示 | ps ax |
kill -9 プロセス番号 | 指定したプロセスを強制終了 | kill -9 5826 |
sudo コマンド | 指定したコマンドを管理者権限で実行 | sudo nano settingfile.conf |
次回はもう少し詳しくCLI環境でのコマンド操作について触れていきます!
参考文献
「これ1冊でできる!ラズベリー・パイ超入門」(株式会社ソーテック社)