こんな人には役に立つかも
・プログラミングを始めたい、きっかけの一つとして何かを体験してみたい。
・コマンドでパソコンを操作してみたい
オペレーティングシステムについて少しだけ理解があると、より理解できるかもしれませんので、以下の記事も参考にしてみてください。
CUIとGUIの違いを覚えよう
パソコンを操作する方法には、普段のマウスやタッチで操作する方法以外にコマンドで操作する方法があります。
人間に視覚的にわかりやすく操作ができるGUIの操作方法に加えて、コマンドで操作する方法も覚えておくとプログラミングをするときの考えの一つとして役立って便利です。
クイ?グイ?
GUI(グラフィカルユーザインターフェース)
普段、パソコンを操作するときは、マウスを使ったり、画面をタッチしたりします。
これは、OS(オペレーティングシステム)のグラフィカルユーザーインターフェース(GUI)という機能で視覚的に操作ができるようになっています。
windowsアプリなどでは、ウィンドウがあり、マウスでボタンをクリックして何かを実行したり、視覚的にいろいろできますね。iPhoneのアプリもボタンのタッチ操作や、テキスト入力を視覚的に行って操作できます。
CUI(キャラクタユーザインターフェース)
一般的にはなじみがないと思いますが、コマンドを与えてパソコンを操作することもできます。
先ほどの視覚的に操作と対照的に、「文字によるコマンド」で操作を行うので、キャラクタユーザーインターフェースと呼びます。(キャラクタは英語で文字)
具体的には、
windowsは「コマンドプロンプト」というアプリケーション
macやLinuxでは「ターミナル」というアプリケーション
を使ってコマンドでOSに指示を与えることができます。
コマンドで操作してみよう
デスクトップにコマンドプロンプト、またはターミナルで「test」という名前のフォルダを作成してみます。GUIで操作した場合、デスクトップでマウスの「右クリック」->「新しいフォルダを作成」->「フォルダの名前を入力」という3ステップでできてしまいますが、この処理をコマンドでやってみましょう。
CUIで操作
1.「コマンドプロンプト」(win)または「ターミナル」(mac)を起動します。
windowsの場合は「コマンドプロンプト」、macの場合は「アプリケーション->ユーティリティ->ターミナル」を起動します。
2.コマンドプロンプト、ターミナルの見方
コマンドプロンプトの場合(windows)
コマンドプロンプトを起動すると、「C:\Users\Panda」(※←Pandaの部分はそれぞれのパソコンで異なります。)のように、ユーザーのフォルダの場所が左に表示されています。
今操作している場所が、「C:\Users\Panda」という場所ということになります。基本的にwindowsでは、このユーザー名がついたフォルダの中に「Desktop」という名前のフォルダがあり、そこが普段画面で見ているデスクトップになります。
次は、コマンドでDesktopフォルダに移動してみましょう。
ターミナルの場合(mac)
macのターミナルを起動すると、「コンピュータ名:今いるフォルダの場所 ユーザー名$」という表記が左に表示されています。
この「~」はスタート地点を示すものです。実際には、次のフォルダの場所の短縮表記となっています。(※ホームディレクトリといいます。ホームディレクトリは後から自分でどこにするか設定も自由にできます。~という表記で設定したスタート地点を示すものと覚えておくと便利です。)
今操作している場所が、「~」という場所ということになります。
初期設定では、下の図のように、ユーザーのフォルダが「~」の示す場所になっています。macでは、このユーザー名がついたフォルダの中に「Desktop」という名前のフォルダがあり、そこが普段画面で見ているデスクトップになります。
次は、コマンドでDesktopフォルダに移動してみましょう。
3.「cd」コマンドで移動
コマンドプロンプト(windows)またはターミナル(mac)に
cd Desktop
と入力し、エンターを押します。
コマンドは、キーボードで入力して「エンター」で実行できます。
コマンドの処理が完了すると、コマンド入力前の状態と同じように、入力用カーソルがチカチカしてコマンド入力待機状態になります。
今回は、フォルダからフォルダへの移動コマンドでしたので、コマンドを入力した後に、カーソルがチカチカしている左の部分に変化があります。
コマンドプロンプトでは、「\Desktop」が追加されています。
ターミナルでは、「~」が「Desktop」に変化しています。
このように、今いる場所がどこなのかが常に表示されるようになっています。
4.「mkdir」コマンドの入力
コマンドプロンプト(windows)、またはターミナル(mac)に
mkdir test
と入力してエンターで実行します。
このコマンドを実行すると、画面上(デスクトップ)に、「test」という名前のフォルダができますね。
ここで重要な点としては、Desktopというフォルダに移動した状態で「mkdir」コマンドを実行したことです。
mkdirコマンドをDesktopで実行したので、Desktopに「test」というフォルダが作成されました。
コマンドで変化がでると、ちょっと興奮するよね。
まとめ:結局、コマンド(CUI)で操作する意味はあるの?
今見てきたコマンドは、「移動(cd)」と「フォルダ作成(mkdir)」だけでした。
他にも、ファイルをコピーするコマンド、今のフォルダ内に何があるか確認するコマンド、などコマンドはたくさんあります。
なぜわかりにくいコマンド(CUI)で操作するのか?
コマンドでの操作は、一定の慣れが必要で、訓練を受けている人でないと、なかなか理解しづらい側面があります。しかし、視覚のないコンピュータからみると、コマンドのほうが無駄がない命令の受け方になっています。CUIでコマンドを与えるということは、少しコンピュータに寄り添った操作方法になります。
コマンドでの操作に慣れるに越したことはないですが、普段の作業はマウスでポチポチやるほうが慣れていて便利かもしれません。もちろん、人が操作する前提で作られているワードエクセルなどのアプリは、GUIでの操作がメインです。
ここで、最も重要な点は、
一連のコマンドをプログラムとして実行できる
という点です。
今作成した一連のコマンドをひとつのファイルとして保存しておくことで、ワンクリックでデスクトップにフォルダが作成できるようになります。
これをWindowsではバッチファイルと呼んでいます。(mac Linuxではシェルスクリプト)
今回のコマンドをバッチファイルとして保存しておけば、バッチファイルの実行だけで、デスクトップに「test」というフォルダを作成してくれるプログラムになります。
※今回はバッチファイルでの実行には触れませんm__m
もっと複雑な手順をバッチファイルにしておくと便利だね。
CUIで知っておくと便利な概念:ディレクトリ
ディレクトリとは
先ほどのコマンドプロンプトの左の部分に「C:\Users\Panda」という表記がありました。これは、現在いる場所を示しています。
ビルの何階にいるかみたいなイメージで、階層(ディレクトリ)という言葉でどこにいるか表現されます。「C:\Users\Panda」の場合は、Cというフォルダの中のUsersというフォルダの中のPandaという階にいますよ、という意味です。ですので、PandaからDesktopフォルダへ移動する場合も、階層を移動する、という表現になります。
先ほど、cdコマンドを利用して移動していましたが、cdは「change directory」の略です。
今いる場所を意識しよう:カレントディレクトリ
重要な点として、コマンドを実行するときは、今いる階層を意識して実行するという点に注意してください。mkdirコマンドであれば、「mkdir test」として実行することで、今いる階層にtestという名前のフォルダを作成しています。
カレント(現在の)とディレクトリ(階層)の組み合わせの言葉ですね。
ちなみに、mkdirは、「make directory」の略なので、こちらも余裕があれば覚えておくと良いです。
地味だけど、コマンドでパソコンを操作できるといろいろな場面で使えるね