黒い画面克服委員会 Vol.1
@akko_babyblue & @assay
姫路IT系勉強会 Vol.16
自己紹介
 @akko_babyblue(嫁)(初心者)
• 某娯楽系大学(非工学系)⇒某工科大学院出身(非情報系)
• ヘルプデスク10年選手
• そろそろWindowsから離れたいけど黒い画面怖いDebian入門者
• プログラム経験 VBA、MATLAB各中級程度
• そろそろRubyやってみようかな(「たのしいRuby」購入済)
 @assay(旦那)
• 某娯楽系大学出身(非工学系)
• 現在情シス勤務 SE経験あり
• FreeBSD大好きなMac使い
• 広く浅くなんでもできます
姫路IT系勉強会 Vol.16 2
黒い画面との出会い
 学部生時代に履修した「情報処理概論」(一般教養)
 Windows95の時代(まだ個人でPC所有してなかった)
 n88basic
 スロットゲーム作り
 よくわかんないけどちょっと楽しい☆
姫路IT系勉強会 Vol.16 3
最初の挫折
 Linux(RedHat)の授業( n88basicから5年後)
 初めてなのに扱うのは「黒い画面」だけ
 用語もわからないのに黒い画面はどんどん進んでいく
 薄暗い教室、意味不明な授業で意識が朦朧とする
 非ハンズオン&復習環境がないためまったく理解できず
姫路IT系勉強会 Vol.16 4
挫折したまま10年
 卒業後は主にWindowsOSのサポートに従事
 エンドユーザは黒い画面に露骨な拒否反応
 使うコマンドは限定的かつ少しだけ
• ping
• ipconfig
• netstat
• gpupdate
姫路IT系勉強会 Vol.16 5
克服へのきっかけ
 転職してWindowsOSの動向から解放された
 勉強会に参加し始めてから迷走
 ノートPCにDebianを入れた
姫路IT系勉強会 Vol.16 6
挫折原因を自己分析
 「なんでもできるよ!」と言われてもイメージわかない
 横から見ていても何をしているか全然わからない
 授業で見ていても全然わからない ⇒ 単位が取れない
 コマンドがよくわからない
 WindowsOSなのに黒い画面を使うのは納得いかない
姫路IT系勉強会 Vol.16 7
学習曲線(理想)
姫路IT系勉強会 Vol.16 8
これだけ勉強したら
これだけ
使える
学習曲線(現実)
姫路IT系勉強会 Vol.16 9
1 2 3 4 5 6 7
習熟度
使えるようになるのは段階的
学習曲線(現実)
ステップアップ
ステップアップ
ステップアップ
挫折
挫折
挫折
挫折
学習を始めるにあたり
 主に使用したテキスト
UNIXコマンドブック
逆引き用例集
コマンド辞典
姫路IT系勉強会 Vol.16 11
UNIXの概念
姫路IT系勉強会 Vol.16 12
 そもそもWindowsとは何が違うの?
UNIXの概念
定理1:スモール・イズ・ビューティフル(小さいものは美しい)
★定理2:一つのプログラムには一つのことをうまくやらせる
定理3:できるだけ早く試作する
定理4:効率より移植性を優先する
定理5:数値データはASCIIフラットファイルに保存する
定理6:ソフトウェアを挺子として使う
★定理7:シェルスクリプトによって挺子の効果と移植性を高める
定理8:過度の対話的インタフェースを避ける
★定理9:すべてのプログラムをフィルタにとして設計する
姫路IT系勉強会 Vol.16 13
UNIXの概念
 定理2:一つのプログラムには一つのことをうまくやらせる
• 機能を絞ったコマンド群がたくさん(cf:何でもできる1つの巨大なプログラム)
 定理9:すべてのプログラムをフィルタとして設計する
• 単機能のコマンドを組み合わせて使う
小さなプログラムを組み合わせて
大きな効果を得る
姫路IT系勉強会 Vol.16 14
GUIとCUIの違い(lsの例)
姫路IT系勉強会 Vol.16 15
me@pc:~/histudy/15% ls -a
. .. 1 file file01 file02 file03
tomoki-m@silver:~/histudy/15% ls -l
total 0
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 1
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file01
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file02
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file03
me@pc:~/histudy/15% ls -a
. .. 1 file file01 file02 file03
tomoki-m@silver:~/histudy/15%
どのように表示するか
表示メニューで選択する
どのように表示するか
オプションで選択する
GUIとCUIの違い(lsの例)
姫路IT系勉強会 Vol.16 16
me@pc:~/histudy/15% ls -a
. .. 1 file file01 file02 file03
tomoki-m@silver:~/histudy/15% ls -l
total 0
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 1
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file01
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file02
-rw-r--r-- 1 tomoki-m staff 0 2 11 11:52 file03
me@pc:~/histudy/15% ls -a
. .. 1 file file01 file02 file03
tomoki-m@silver:~/histudy/15%
何を表示するか
オプションで指定
何を表示するか
設定画面で設定
概念の違い(嫁の解釈)
コマンド GUI
姫路IT系勉強会 Vol.16 17
用意されたものの中から
自分が必要なものだけ使う
起動した時点で
用意されたものが全部見えている
とりあえず始めよう
 どんなことができるかをカタログ的に眺めてみる
 ディレクトリやファイルの操作
 システムの操作
 ネットワークの操作
etc...
姫路IT系勉強会 Vol.16 18
最初に覚えたコマンド
姫路IT系勉強会 Vol.16 19
コマンド 使い方
ls 今いるディレクトリ内の一覧を取得
cd [移動先] ディレクトリを移動する
ディレクトリ名の前に[ / ]をつけると
ルート直下をたどる
cdのみだとホームディレクトリに戻る
man [コマンド] そのコマンドのマニュアル
mkdir [なまえ] ディレクトリを作成する
コマンドの基本
姫路IT系勉強会 Vol.16 20
# と $ スーパーユーザのときは#
一般ユーザのときは$
大文字小文字 区別する
パス $ echo $PATH
→表示されたディレクトリの中に、
それだけ入力すれば実行できる
コマンドが入っている
‐と- - ‐はオプションを省略形で指定、
- -はオプションをフルスペルで指定
で最初に覚えたこと
姫路IT系勉強会 Vol.16 21
$ su - スーパーユーザで操作し
たいとき
# apt-get install [アプリ名など]
# aptitude install
インストールしたいとき
# apt-get update アップデートしたいとき
でもまだまだGUIに頼っているのが現状…
さらに練習問題で慣れる
 Webページを取得する
wget [URL] とオプションを使う
・-r でサイトまるごとゲットだぜ!
・—directory-prefixで
指定したディレクトリに保存だぜ!
・取得したファイルをfirefoxで開くぜ!
姫路IT系勉強会 Vol.16 22
さらに練習問題で慣れる
 合わせ技を覚える
→パイプ(|)とリダイレクト(>とか<とか)の使い方
 ls > hoge.txt
• lsの結果がhoge.txtに出力される
 ls | more
• lsの内容を1ページずつ表示
姫路IT系勉強会 Vol.16 23
便利な技 募集
 pandocというコマンドを教えてもらいました、まる。
姫路IT系勉強会 Vol.16 24
まとめ
 最小限覚えるコマンドはちょっとだけでいい
 あとはディレクトリ構造(パス)が分かってるとよい
 便利なコマンドもいろいろある
(grepとかmoreとかlessとか><とか)
 目的に合わせてちょっとずつ覚えていくといい
 黒い画面はこわくないよー
姫路IT系勉強会 Vol.16 25

黒い画面克服委員会 Vol.1