Webデザイナーの為の「本当は怖くない」“黒い画面”入門の要約

概要

要約

Part2

binディレクトリのbinとは

  • binはbinary(バイナリ)の略
  • binaryには”対になった物”という意味がある
  • コンピュータのCPUが実際に実行するプログラムの中身は0と1だけになるため、実行できるプログラムのことをbinaryファイルと言う
  • ls(などのコマンド)もbinaryファイルである

PATHとは

  • PATHはターミナルに設定されている環境変数の一つ
  • ディレクトリ名を設定しておくと、そこの中にあるプログラムはディレクトリ名を省略してファイル名だけで実行できるようになる

環境変数(environment variable)とは

  • ターミナルで最初から設定されている変数
  • コマンドの実行時に影響を与える周囲の環境といったニュアンスなので環境変数という
  • envコマンドで環境変数の一覧を見ることが出来る
  • 一行に一つ、変数名と中身が=(イコール)を挟んだ形で表示される
  • 先頭に$を付けてechoコマンドで設定項目の中身を出力することができる

Part3

Part4

  • アルファベット一文字だと覚えにくいので、–(ハイフン二つ)から始まる同じ機能を持つオプションがある場合もある
  • ハイフン一つのものをショートネームオプション(short name option)、ハイフン二つのものをロングネームオプション(long name option)と呼ぶ
  • ショートネームオプションとロングネームオプションは混在させることができる 例)
$ command -a --file=/tmp/foo bar

Part6

Package Manager(パッケージマネージャ)

Package Managerとは

  • ソフトの依存関係を管理して、必要に応じてソフトを勝手にダウンロードしてきてインストールしてくれる
  • 依存関係: 一つのソフトが複数のソフトを利用するため、正常に動作するにはソフトB 5.0にはソフトA 2.0以上が必要といった関係

Homebrew

  • HomebrewにはXcodeというソフトが必要
  • Xcode自体は必要無いが、これを入れるとHomebrewの動作に必要なソフトが沢山インストールされる。またターミナルを使っていく上であると便利なソフトが沢山ある
Homebrewのインストール
# /usr/localディレクトリの所有者を自分のユーザーに変更する
$ sudo chown -R `whoami` /usr/local
  • chownはChange Ownerの略でファイルやディレクトリの所有者を変更するコマンド
  • 所有者のユーザー名と変更したいファイル・ディレクトリ名を指定する
  • Rは指定したディレクトリより下全部を変更するというオプション
  • whoamiは自分のユーザー名を表示するコマンド
  • バッククォートで文字を囲うとその文字をコマンドとして実行して出力結果に置き換える
# Homebrewをインストールする
$ ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  • 上記はrubyコマンドとcurlコマンドを組み合わせてる
  • 上記のURLにはrubyプログラムでHomebrewのインストールプログラムが書かれていて、それをcurlで取ってきてrubyで実行している

Part8

作業の自動化

Scriptの作成

  • script(スクリプト): 実行したいコマンドを順番に書いたファイル

例)

# gitコマンドで最新のファイルをlokkaというディレクトリ名でダウンロードする
$ git clone git://github.com/komagata/lokka.git lokka

# zipコマンドでzipに圧縮する
$ zip -r lokka.zip lokka

# 元のディレクトリはもう要らないのでrmコマンドで削除する
$ rm -r lokka

shebangの設定

  • shebang(シバンsharp bangの略)とは独自のスクリプトをコマンドのように単体で実行できるようにする機能
  • 実行しようとしたファイルの1行目の最初の二文字が#!だったら、その後に書いてあるコマンドに2行目以降の全てを渡すという機能

例)

  • echo-helloというファイルを作成して下記の内容を保存する
#!/bin/sh
echo hello
  • 下記のコマンドをターミナルで実行する
# chmodはChengeModeの略でファイルの権限を変更するコマンド
# echo-helloというファイルにユーザー実行権限(u+x)を追加している
$ chmod u+x echo-hello

$ /Users/`whoami`/echo-hello

# => hello

ファイルの置き場所

  • 自分だけが使うようなスクリプトはホームディレクトリにbinというディレクトリを作ってそこに置く人が多い
  • /binや/usr/binはシステムの動作に必要なコマンドを置く場所 例)/usr/local/binは全ユーザーで共有するようなコマンドを置く

PATHの設定

  • 下記をターミナルで実行してPATHを設定する
$ export PATH=$PATH:~/bin
  • exportは環境変数を設定するコマンド
  • envコマンドの出力結果のように環境変数名と中身を=(イコール)で区切って渡すとその値に設定される
  • ~/bin$HOME/binと同じ意味($HOME~(チルダ)一文字で表すことができる)
  • 環境変数PATHは:(コロン)で区切ってディレクトリ名をつなげたものなので、上記は今までPATHに設定されてたものに~/binを追加するという意味になる

Part9

shell

shellとは

  • shellは殻という意味
  • コンピュータを貝殻のようにつつみ、ユーザーとの仲介役をしてくれる
  • Finderもコンピュータを包みこんでユーザーとの仲介役をしてくれるという意味では同じ
  • shellも単なるプログラムに過ぎない(/bin/sh

shellの種類(の一部)

  • bash: Mac(のデフォルト)で使われている。shの強化版
  • zsh: 最後のshellを目指して作られた

疑問点

  • Part7のファイル表示のコマンドはcatよりlessの方が良いのでは?
    • 理由:ファイルの内容が多くてもスクロールして全て表示できるため

参考