のんべんだらり

プログラミングの勉強をはじめた人が書いてるブログ

Terminal(ターミナル)使ってみた

学習内容をちょっと書いてみます。

Terminalについて少し学習しました。使いこなせるようになると作業を自動化できるため、効率よく仕事を片付けられるようになるそうです。なんて便利。確かに仕事中、扱う資料は違えど同じ手順で作業を繰り返すことがあるので、それがもし自動化できるならものすごく便利ですね。早く使いこなせるようになりたいものです。

 

今回はTerminalの使い方を学習した時にやってみたことについて書いていきます。

 

 起動してみる

自分が使っているパソコンはMacなので、アプリケーション→ユーティリティに入っている「ターミナル」を立ち上げます。

すると2行目に「ホスト名(host name):ユーザー名$」と表示されます。ホスト名は使っているコンピューターの名前、$マークまでの左側をプロンプトと言い、$マークは入力の目印みたいなものです。実行したいコマンドやファイル名は$以降に入力していきます。

 

どんなコマンドがあるのか

「/bin」というフォルダの中にターミナルで使えるコマンドが入っているので、それを参考にします。Finder→メニュー→移動→フォルダへ移動「/bin」で移動できます。

以下は、各コマンドを入力した場合の動作です。$の右以降にコマンドを入力し、エンターキーを押すと実行されます。

  • ls:listの略。ファイルやディレクトリの一覧を表示する。
  • pwdPrint Working Directoryの略。現在居るディレクトリのパスを表示する。
  • echo+スペース+引数:引数(ひきすう)とはコマンドに渡して実行したい文字のこと。引数には適当な文字を入れられる。例えば「echo Hello」と入力すれば「Hello」を「echo」というコマンドに渡して実行することになる。
  • echo+スペース+$PATH:PATHに設定されたディレクトリを表示する。コロンで区切られている。PATHとは、例えば深い階層にあるコマンドを実行するときに使用する…短縮番号のような、ショートカットのような、正式なパスを入力しなくてもファイル名だけで使える便利な仕組み。
  • env:environmentの略。環境変数の一覧を表示する。PATHなど各種コマンドの実行に影響を与えるものがある。
  • cdChange Directoryの略。ディレクトリを移動する。例えば「cd /bin」と入力すれば「bin」のディレクトリに移動する。
  • ls+スペース+-a:-aの部分はオプションという。ドットで始まる名前のファイルやディレクトリを表示する。普段は見えない隠しファイルなどがこれで見れる。
  • コマンド+スペース+-h:コマンドの使い方を簡易的に表示する。Usageは利用法のこと。
  •  man+スペース+コマンド:コマンドの詳しいマニュアル(manual)を表示する。ただし英語で。矢印キーでスクロール、qキーでマニュアルを終了する。

 

あとはcurlでURLを指定すると、そのページのソースを表示してくれたり、

openで指定したファイルを開いてくれたり、

ファイルを作成したり(touch)、コピーしたり(cp)、移動したり(mv)、削除したり(rm)。。。色々とあります。

 

とりあえず使ってみた

まだまだ初心者なので、まずはターミナルに慣れるために表示する系のコマンドとcdのみ入力しまくりました。よく分からないままmvやらrmを実行して「あれ?あのファイルどこいった?」ってなるのが怖かったので 😅

ls、pwd、cd、-hあたりを延々と使っていると、段々とターミナルの画面が見慣れてきた気がします。英語があんま読めないので苦手なんですが、でも知ってる単語が知ってるコマンドで、どんな動作をするものなのか分かっていると苦手意識が薄れるように思います。マニュアルは全然読めないのでもう全力で苦手ですが。。。助けてグーグル先生。

使っていくうちに慣れていくと思うので、とりあえずは無闇矢鱈に苦手意識を持たないようにしたいと思います。

 

おまけ

ちなみに。

ターミナルのようにコマンドを打つことで操作することをCUIcharacter user interface)というそうです。character=文字を使って、人とコンピューターがやりとりすること。

アイコンなどをマウスでクリックする等で操作することはGUI(graphical user interface)というそうです。graphic=画像を使って、人とコンピューターがやりとりすること。

CUIは覚えることが沢山ありそうですが、その分出来る事も多い気がします。いつかマスターして、作業を効率よく進められるようになりたいものです。