devlove ターミナル勉強会 zsh + screen

Tags:

Post on 07-Nov-2014

9.946 Views

Category:

Self Improvement

4 Downloads

Preview:

Click to see full reader

DESCRIPTION

2011年9月12日 DevLOVE ターミナル勉強会で発表した資料です。

TRANSCRIPT

DevLOVE ターミナル勉強会 zsh + screen

12 Sep. 2011 さとうようぞう

Twitter: @yoozoosato

謝辞

会場をご提供いただきました、日本オラクル様。 どうもありがとうございます。 お集まり頂きましたみなさま、ありがとうございます。 企画・運営に関わっていただいたDevLOVEの皆様。 いつも感謝しています。

#hashtag • 今日の勉強会のハッシュタグ

#devlove0912 #devlove

自己紹介

devlove% echo $NAME

0 zsh !2011/09/12

devlove% echo $NAME

0 zsh !2011/09/12

devlove% SATO Yozo

devlove% echo $NAME

0 zsh !2011/09/12

devlove% SATO Yozo devlove% echo $TWITTER_ID

devlove% echo $NAME

0 zsh !2011/09/12

devlove% SATO Yozo devlove% echo $TWITTER_ID devlove% @yoozoosato

devlove% echo $NAME

0 zsh !2011/09/12

devlove% SATO Yozo devlove% echo $TWITTER_ID devlove% @yoozoosato devlove% echo $MAIL

devlove% echo $NAME

0 zsh !2011/09/12

devlove% SATO Yozo devlove% echo $TWITTER_ID devlove% @yoozoosato devlove% echo $MAIL devlove% yoozoosato@gmail.com

devlove% echo $JOB

0 zsh !2011/09/12

devlove% echo $JOB

0 zsh !2011/09/12

devlove% 某ISP

devlove% disclaimer

0 zsh !2011/09/12

devlove% disclaimer

0 zsh !2011/09/12

このプレゼンテーションは皆様に zsh と screen を「明日から」使ってもらうことを目的としています。単なる zsh と screen の紹介ですので hack するような話はあまりありません。!また、さとうようぞうが所属ないし関係する組織の公式な意見・見解を反映したものではありません。

1. 何故ターミナル(CUI)なのか 2. GNU screen との出会い 3. zsh との出会い 4. 使ってみよう 5. ターミナル勉強会 今後

Agenda

1. 何故ターミナル(CUI)なのか 2. GNU screen との出会い 3. zsh との出会い 4. 使ってみよう 5. ターミナル勉強会 今後

Agenda

「CUIは古典的で不便だが、GUIは直感的で操作性が良い」とステレオタイプで語られる事が多い

http://ja.wikipedia.org/wiki/キャラクタユーザインタフェース

GUIと比較してのメリット •  繰り返し作業に強い – ファイルコピー、移動などをミスらずに実行できる

•  作業履歴が残る .zhistory / .bash_history – 「記録」が残る、という意味で

•  他の人に作業内容を伝えやすい – 残した記録を活用できる

CUI ならではのメリット •  リモートに接続する時、転送量が少ないので軽い – 昔はPHSカード(56kbps)とかで通信してた

•  操作の全てをキーボードで実行可能 •  一画面に表示できる情報量が多い – アイコンとかないから – screen 分割とか Emacs で複数ウインドウ等

デメリット •  GUI と比較するととっつきにくい – command を知らないと操作できない – 黒字に白い文字だけの画面は古臭いw

•  Office 系のソフトなど、仕事で必須のアプリが使えなかったりする – CUI だけで生きていくのは無理と思う – 良い所どりして活用していくのがポイント?

Agenda 1. 何故ターミナル(CUI)なのか 2. GNU screen との出会い 3. zsh との出会い 4. 使ってみよう 5. ターミナル勉強会 今後

GNU screen とは?

いつ、どこで •  2003年頃 •  携帯コンテンツを作る会社で働いていた時 •  当時は PHS回線でリモートの Linux サーバーに接続したりとかしてた – 作業途中で接続が切れる – DBに接続してても切れる – バッチを走らせてても切れるw

•  隣に座っていた師匠に「 screen 使えばいいよ」と教えてもらった

覚えたこと •  接続が切れても screen –rd で戻れる •  同時に複数の仮想端末を操作できる •  ウインドウ間で文字列をコピペ可能 •  皆さん、ターミナル使うとこんな感じになっていませんか?

或は

勿 体無 い

screen ならこんな感じ

実演

切れても大丈夫

Agenda 1. 何故ターミナル(CUI)なのか 2. GNU screen との出会い 3. zsh との出会い 4. 使ってみよう 5. ターミナル勉強会 今後

いつ、どこで •  2ch のUNIX板にあった「連番のエロ画像を

DLするスレ」 – http://pc8.2ch.net/test/read.cgi/unix/979106537/!

– dat落ちしてるので、Pt.4をどうぞ

•  これを読んで感銘を受けたw – http://www.gentei.org/~yuuji/rec/pc/intro-zsh.html!

覚えたこと (1) •  連番エロ画像の一括取得は zsh で解決

wget \http://example.com/ero{01..99}.jpg!

•  bash だと例えば・・・ for i in `seq -w 01 99`;! do wget \! http://example.com/ero$i.jpg;!done

エロは技術の原動力

実演 •  けしからんサイトの画像40枚を wget

覚えたこと (2) •  右側プロンプトが超絶便利 – pwdとか打たなくなった

•  コマンドラインスタックが便利で萌え死ねる – Esc - q で入力途中のコマンドがスタック – 他のコマンドを打って、それが終わると元通り!

– スタックの詳細は次のセッションで!

Agenda 1. 何故ターミナル(CUI)なのか 2. GNU screen との出会い 3. zsh との出会い 4. 使ってみよう 5. ターミナル勉強会 今後

開発編:バージョン管理 •  例えば git の場合 – ブランチ名が表示される – 変更を加えたかどうかが分かる – (いずれも zsh の機能です)

screen をカスタマイズ •  色んな情報をターミナルに常時表示 – Load Average などのハードウェア情報 – Unit Test の結果(グリーン・レッド) •  http://somethingnew2.com/blog/archives/2010/01/tddbcruby.php!

– etc.. •  backtick – 任意のコマンドの出力を screen に表示できる

http://www.kanshin.com/keyword/476309

実演

Agenda 1. 何故ターミナル(CUI)なのか 2. GNU screen との出会い 3. zsh との出会い 4. 使ってみよう 5. ターミナル勉強会 今後

第2回もやります。多分。 •  LLでWEB系をやっていると、ターミナルは避けて通れない

•  LL系WEB開発 三種の神器 1.  Editor •  vim / emacs / JEdit / 秀丸 etc.

2.  Browser 1.  Chrome / Firefox / Safari / w3m etc.

3.  Terminal •  Terminal.app / iTerm / TeraTerm / DOS窓

例えば・・・ •  SSHについて – ~/.ssh/config をいじって多段SSH & トンネル

•  tcsh の良い所も聞いてみたい •  「grep 楽しいです、 grep」 •  たまには awk とか sed も思い出してあげて下さい

ネタは随時募集しています

• twitter で @yoozoosato 宛につぶやいてみる • twitter でハッシュタグ #devlove を付けて「こんなのやりたい/聞きたい」とリクエスト

Thank you!

top related