Submit Search
デザイナー・コーダーのための黒い画面入門
•
13 likes
•
3,354 views
W
webcampusschoo
Follow
schoo WEB-campus http://schoo.jp/class/286/room
Read less
Read more
1 of 97
Download now
Downloaded 12 times
More Related Content
デザイナー・コーダーのための黒い画面入門
1.
Unix For Non-Programmers nanapi.inc Chief
Technology Officer / Shuichi Wada
2.
自己紹介 • 株式会社nanapi CTO 和田修一
/ @wadap • 楽天でインフラ4年、nanapiでCTOを4年 • サーバ/インフラ〜サーバサイド開発が得意
3.
本日のゴール • 黒い画面でやっていることが何かを正しく理解する • 基本的な操作を自分でも学べる状態になる • もう黒い画面なんて怖くない!
4.
黒い画面を使っことある人は どれくらいいますか? Yes / No
5.
どんな職種の人がいるのでしょうか? デザイナー / コーダー
/ ディレクター フロントエンドエンジニア / サーバサイドエンジニア
6.
サポートOS • Mac OS 10.9
Mavericksを講義では利用します • たぶん他のMacOSでも大丈夫だとは思います • Windowsの方はちょっと動作かわりますがコレで http://bellard.org/jslinux/
7.
nanapiでの会話… • Designer「●●ってどうやればいいの?」 • Engineer「ああ、ターミナルでやればいいよ」 • Designer「」
8.
タ、ターミナル・・・てアレ・・・?
9.
黒い画面
10.
本当は怖くない黒い画面 • 黒い画面は一体なんなのか?ということからしっか りと理解すれば難しくありません! • 最初は座学中心ですが、重要なのでちゃんと理解し ましょう!
11.
ターミナルって何?
12.
ターミナルって何? • ターミナルはあくまで操作するためのインターフェ イスを提供しているだけ • 文字列を入力して、文字列を表示することだけ • 黒い画面=ターミナル、という認識でOK
13.
コマンドは何? MacOSへのコマンド ターミナル Windowsへのコマンド
14.
操作法が違うワケ • MacOSで操作するターミナルと、Windowsのコマ ンドプロンプトでは操作方法が違う • それはターミナルによる差ではなく、OSによる差
15.
MacはUnix環境 • MacOSはUnixというOSの種類 • Unix環境にはプログラマ向けのツールが充実 • サーバの環境に似ている環境
16.
Unixって聞いたことありますか? Yes / No
17.
Unixという考え方 • Unix設計思想など根本的な部 分が書いてある話 • 小難しい技術の話ではなく設 計哲学 • UXの話にもつながるのでぜひ 本で欲しい一冊
18.
Unixにおけるコンセプト • ユーザーは、自分が何をしているのかを分かってい る • 何をしているのか分からないのなら、ここにいるべ きではない
19.
どのようにして学ぶか • 基本思想にしたがって学べば良い • ただコマンドをコピペするのではなく、しっかりと 意味を理解しながらコマンドを打っていく • 基本がわかれば、自分でどんどん学べる
20.
座学終了! ここで一度質問タイムをいれます
21.
ターミナルを使おう
22.
ターミナルの起動方法 • アプリケーション • ユーティリティー • ターミナル.app
24.
最初は白いです • MacOSのターミナルはデフォルトでは白いです • 雰囲気だすためにも、黒いスタイルに変更します
25.
カラーの変更方法
26.
黒い画面になりましたか?
27.
Unixをさわろう!
28.
コマンドの打つ上での注意 • 半角英数字で入力する • アルファベットは全部小文字で • スペースも半角スペースで
29.
ファイルの一覧
30.
ファイル一覧 wadap@macbookpro:~$ ls AndroidStudioProjects Desktop Sites Documents Applications Downloads
31.
lsコマンド • いろいろ表示されましたね。lsはファイル一覧を取 得するためのコマンドです • listの省略形とおぼえておきましょう • Unixコマンドは何らかの省略形になっていること が多いです。それを紐付けて覚えましょう。
32.
これがFinderのどこに対応するか 考えてみましょう
33.
ファイル一覧詳細 wadap@macbookpro:~$ ls drwxr-xr-x 5 shwada drwxr-xr-x 2
shwada drwx------+ 12 shwada drwx------+ 19 shwada drwx------+ 61 shwada drwx------@ 14 shwada drwx------@ 70 shwada drwx------+ 3 shwada drwx------+ 6 shwada drwx------+ 6 shwada drwx---r-x+ 4 shwada drwxr-xr-x+ 3 shwada -l staff staff staff staff staff staff staff staff staff staff staff staff 170 68 408 646 2074 476 2380 102 204 204 136 102 8 11 11 11 11 11 11 4 4 7 4 4 27 19 21 22 22 21 19 12 23 4 12 12 18:38 12:01 18:19 12:53 15:59 20:21 11:00 2013 2013 22:06 2013 2013 AndroidStudioProjects Applications Desktop Documents Downloads Dropbox Library Movies Music Pictures Public Sites
34.
ファイル一覧詳細 wadap@macbookpro:~$ ls drwxr-xr-x 5 shwada drwxr-xr-x 2
shwada drwx------+ 12 shwada drwx------+ 19 shwada drwx------+ 61 shwada drwx------@ 14 shwada drwx------@ 70 shwada drwx------+ 3 shwada drwx------+ 6 shwada drwx------+ 6 shwada drwx---r-x+ 4 shwada drwxr-xr-x+ 3 shwada -l staff staff staff staff staff staff staff staff staff staff staff staff 170 68 408 646 2074 476 2380 102 204 204 136 102 8 11 11 11 11 11 11 4 4 7 4 4 27 19 21 22 22 21 19 12 23 4 12 12 18:38 12:01 18:19 12:53 15:59 20:21 11:00 2013 2013 22:06 2013 2013 日時 AndroidStudioProjects Applications Desktop Documents Downloads Dropbox Library Movies Music Pictures Public Sites ファイル名
35.
ls -l • さっきとは表示が変わりました。 • このようにしてコマンドはオプションを渡すことで 挙動を変えることができます。 • Unixでは、-(ハイフン)の後ろに英数字をつなげ ることでオプションとして解釈されます
36.
ファイル一覧詳細 wadap@macbookpro:~$ ls drwxr-xr-x 5 shwada drwxr-xr-x 2
shwada drwx------+ 12 shwada drwx------+ 19 shwada drwx------+ 61 shwada drwx------@ 14 shwada drwx------@ 70 shwada drwx------+ 3 shwada drwx------+ 6 shwada -rwxr-xr-x 1 shwada -rwxr-xr-x 1 shwada drwxr-xr-x 1 shwada -la staff staff staff staff staff staff staff staff staff staff staff staff 170 68 408 646 2074 476 2380 102 204 17 17 17 8 11 11 11 11 11 11 4 4 5 5 5 27 19 21 22 22 21 19 12 23 8 8 8 18:38 12:01 18:19 12:53 15:59 20:21 11:00 2013 2013 2013 2013 2013 AndroidStudioProjects Applications Desktop Documents Downloads Dropbox Library Movies Music .vimrc .bash_profile .emacs.d
37.
ディレクトリ作成
38.
ディレクトリ作成 wadap@macbookpro:~$ mkdir study20131126
39.
mkdir • ディレクトリを作成するコマンドです • lsコマンドでディレクトリができたか確認 • コマンドの後ろに、作りたいディレクトリ名をハイフン を入れずに入力します。 • このように「状態を変更する」コマンドの場合、成功し た場合は何も行ってきません。寡黙。 • MaKe DIRctoryの略称です
40.
なぜ何も返さないのか • ユーザーは、自分が何をしているのかを分かってい る • だから、うまくいったら別に何も言わなくていいで しょという考え方 • Unixのコマンドで、「状態を変更するコマンド」 はうまく行った場合ほとんど何も返しません!
41.
移動
42.
移動 wadap@macbookpro:~$ cd study20131126
43.
cd • 自分のいる場所を変更するためのコマンド • Finderとかで階層たどっていきますね、あれとやっ てることは似たようなもの • Change Directoryの略称です
44.
自分の場所確認
45.
自分の場所確認 wadap@macbookpro:~$ pwd /Users/wadap/study20131126
46.
pwd • 自分のいる場所を確認するためのコマンド • Finderの下に出てるアレ • Print Working Directoryの略称です
47.
ホームディレクトリ
48.
ホームディレクトリとは • 自分専用に用意されたディレクトリです • ターミナルをたちあげた直後にいる場所です
49.
ホームディレクトリへ wadap@macbookpro:~$ cd
50.
cd(引数なし) • cdコマンドに引数を渡さないと、ホームディレク トリへ移動します • cdでいろいろ移動してわからなくなったら一旦 ホームディレクトリに移動するのもアリです
51.
ファイルの作成とコピー
52.
ファイル作成 wadap@macbookpro:~$ touch study_20131126.txt
53.
touch • touchコマンドに引数を渡すことで、空ファイルを 作成することができます • 本来はファイル作成用ではありませんが、今回は touchコマンドでファイルを作成しました • これは略称ではなくそのままの意味です
54.
ファイルコピー wadap@macbookpro:~$ cp study_20131126.txt
study_20131126.txt.copy
55.
cp • cpコマンドに、元ファイル・コピー後ファイルと 引数を渡すことでファイルコピーをできます • -r オプションを使うと、ディレクトリごとコピー することもできます • さて、何の略称でしょうか?
56.
ファイルの削除 wadap@macbookpro:~$ rm study_20131126.txt.copy
57.
rm • rmコマンドは、ファイルを削除するコマンドです • -rコマンドをつけることでディレクトリごと削除で きます。 • rmコマンドを打つときはすごく注意! • ReMoveの略です
58.
このあたりがささっとでてくるようになれば、 最低限のファイル操作ができるはず!
59.
コマンドを使う必要があるの? • そこまで必要になるケースは多くないかも • コマンドを知っていると圧倒的に便利になることや、 裏技的なことはたくさんある
60.
ここまでで質問ありますか?
61.
Unixにおけるユーザー
62.
このなかでパーミッションを 777にしたことがある人! Yes / No
63.
権限がない場合 wadap@macbookpro:~$ mkdir /foo mkdir:
/foo: Permission denied
64.
Permission Denied • コマンドを実行する対象に対して、権限をもってい ないときにでるエラー • こういうエラーがあるときは極力シンプルにメッセー ジを返してくれます
65.
Unixにおけるユーザー • Unixは1台のマシンを複数ユーザーで使用すること を想定して作られています • Aさんがつくったファイルを、Bさんが勝手に削除 できないような設計です
66.
ファイル一覧詳細 wadap@macbookpro:~$ ls drwxr-xr-x 5 shwada drwxr-xr-x 2
shwada drwx------+ 12 shwada drwx------+ 19 shwada drwx------+ 61 shwada drwx------@ 14 shwada drwx------@ 70 shwada drwx------+ 3 shwada drwx------+ 6 shwada drwx------+ 6 shwada drwx---r-x+ 4 shwada drwxr-xr-x+ 3 shwada -l staff staff staff staff staff staff staff staff staff staff staff staff 170 68 408 646 2074 476 2380 102 204 204 136 102 所有者 グループ 8 11 11 11 11 11 11 4 4 7 4 4 27 19 21 22 22 21 19 12 23 4 12 12 18:38 12:01 18:19 12:53 15:59 20:21 11:00 2013 2013 22:06 2013 2013 AndroidStudioProjects Applications Desktop Documents Downloads Dropbox Library Movies Music Pictures Public Sites
67.
グループとは? • 複数人いるユーザーをまとめて権限管理するための ものです • エンジニア用のグループ、デザイナー用のグループ みたいな感じです • Macみたいに1人で管理してるマシンではあまり意 識しませんが…
68.
Permissionを理解する • Permissionを777に設定する、とだけ聞くことはよ くあると思います • 777はなんか全部OKみたいな意味くらいまでは理 解してる人は多いでしょう • このあたりをしっかりと理解しましょう
69.
3種類の権限と数値 • 読み込み権限:4(Read) • 書き込み権限:2(Write) • 実行する権限:1(eXec)
70.
Permissionの計算 • 読み込み+権限:4 • 読み込み+書き込み+権限:4+2=6 • 読み込み+書き込み+実行権限:4+2+1=7 • 何もできない:0
71.
Permissionを読む wadap@macbookpro:~$ ls drwxr-xr-x 5 shwada drwxr-xr-x 2
shwada drwx------+ 12 shwada drwx------+ 19 shwada drwx------+ 61 shwada drwx------@ 14 shwada drwx------@ 70 shwada drwx------+ 3 shwada drwx------+ 6 shwada drwx------+ 6 shwada drwx---r-x+ 4 shwada drwxr-xr-x+ 3 shwada -l staff staff staff staff staff staff staff staff staff staff staff staff 170 68 408 646 2074 476 2380 102 204 204 136 102 8 11 11 11 11 11 11 4 4 7 4 4 27 19 21 22 22 21 19 12 23 4 12 12 18:38 12:01 18:19 12:53 15:59 20:21 11:00 2013 2013 22:06 2013 2013 AndroidStudioProjects Applications Desktop Documents Downloads Dropbox Library Movies Music Pictures Public Sites
72.
Permissionの読み方 d rwx r-x
r-x 種別 所有者 グループ その他 7 5 5
73.
Permissionの読み方 d rwx rwx
rwx 種別 所有者 グループ その他 7 7 7
74.
使う場所はちゃんと考えないといけません とくに共用のマシンだと危険です!
75.
rootユーザー
76.
sudoってコマンドうったことりますか? Yes / No
77.
ユーザーの確認 wadap@macbookpro:~$ whoami wadap
78.
whoami • 現時点での自分のユーザーを確認するコマンド • 意味はコマンドの意味のまま
79.
rootユーザーになる wadap@macbookpro:~$ sudo su Password: wadap@macbookpro:~$
whoami root
80.
sudo • sudoコマンドは別ユーザーになるためのコマンド • sudo su xxxx
ってうつと、 xxxxユーザになること もできる • Substitute User DOの略称
81.
rootユーザーの注意 • 不用意にrootユーザーになってはいけません • rootとは全てを司るアカウント • 一発でシステムを壊せます。超注意!
82.
rootから抜ける wadap@macbookpro:~$ exit wadap@macbookpro:~$ whoami wadap
83.
sudoの使い方 wadap@macbookpro:~$ sudo ls
84.
sudo • sudoの後ろにコマンドを続けることもできます • この場合は、rootユーザーとしてlsを打つという意 味
85.
本当に怖いsudo • よくターミナルの手順のなかで、sudoする手順が ありますが注意してください! • 悪意のある人の手順だったら、一発でシステムを壊 すことができます • sudoが頭にある場合は注意!超注意!
86.
もうちょっと便利なコ マンド達
87.
ファイル検索 wadap@macbookpro:~$ find .
88.
findコマンド • 指定したディレクトリよりも下のファイルを検索す る • オプションがなにもないと全てのファイルを表示す る • コマンドを中止したいときは、Ctrl + C
で中断
89.
いろいろなオプション wadap@macbookpro:~$ man find
90.
manコマンド • manは引数にとったコマンドのマニュアルを表示す る • カーソルの上下キーで操作で、小文字のqで抜ける • MANualの略称
91.
ファイル内検索 wadap@macbookpro:~$ grep div
index.html
92.
grep • grepは指定した文字列が、ファイル内にあればそ れを返すコマンドです。 • 最初に渡した引数が検索文字列、2つめの引数がファ イル名です。 • ワイルドカードでファイル名を指定することもでき ます
93.
複数の処理の連結 wadap@macbookpro:~$ ls -l
| grep *txt
94.
|(パイプ) • |(パイプ)を使うことで、複数のコマンドを連結 できる • これにより、小さな機能しか持っていないコマンド を組み合わせて様々な処理を実現できる • コマンドラインにおける操作の一番のメリットはこ れをつかった処理
95.
さいごに • Unixコマンドの意味をわかった上でウチましょう。 それさえわかればあとは慣れだけです • ファイル操作の基本的なコマンドさえでてくるよう になれば、あとは調べながらなんとかなります • 意味わからずコピペだけはしないように!
96.
宿題 • 少しでも黒い画面に抵抗はなくなりましたか? • 率直な感想をお聞かせください!
Download