Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
zshと仮想端末マネージャで快適ターミナル生活
Search
Nobutoshi Ogata
September 12, 2011
Technology
0
120
zshと仮想端末マネージャで快適ターミナル生活
Nobutoshi Ogata
September 12, 2011
Tweet
Share
More Decks by Nobutoshi Ogata
See All by Nobutoshi Ogata
Datadogセミナー 2025/3/13 Datadog On-Callの活用事例のご紹介
nobu666
0
320
サーバサイドの技術スタック・アーキテクチャ総ざらい - SmartNews Tech Night in Fukuoka Vol.1
nobu666
1
17k
SmartNews x PLAID - Cost cut and AWS Enterprise Support
nobu666
0
260
Why Slack?
nobu666
0
290
A Complete Work of SmartNews's SRE
nobu666
2
3.1k
SRE at SmartNews
nobu666
0
7.9k
SmartNews の最近の取り組みについて
nobu666
4
3.5k
Introducing in-hourse PaaS
nobu666
1
300
Monitoring of SmartNews
nobu666
0
170
Other Decks in Technology
See All in Technology
ハードウェアとソフトウェアをつなぐ全てを内製している企業の E2E テストの作り方 / How to create E2E tests for a company that builds everything connecting hardware and software in-house
bitkey
PRO
1
120
[ JAWS-UG 東京 CommunityBuilders Night #2 ]SlackとAmazon Q Developerで 運用効率化を模索する
sh_fk2
3
380
おやつは300円まで!の最適化を模索してみた
techtekt
PRO
0
290
実践!カスタムインストラクション&スラッシュコマンド
puku0x
0
350
「何となくテストする」を卒業するためにプロダクトが動く仕組みを理解しよう
kawabeaver
0
380
Kiroと学ぶコンテキストエンジニアリング
oikon48
6
9.9k
機械学習を扱うプラットフォーム開発と運用事例
lycorptech_jp
PRO
0
230
ZOZOマッチのアーキテクチャと技術構成
zozotech
PRO
3
1.5k
バイブスに「型」を!Kent Beckに学ぶ、AI時代のテスト駆動開発
amixedcolor
2
530
初めてAWSを使うときのセキュリティ覚書〜初心者支部編〜
cmusudakeisuke
1
240
エラーとアクセシビリティ
schktjm
1
1.2k
品質視点から考える組織デザイン/Organizational Design from Quality
mii3king
0
200
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
139
34k
Bash Introduction
62gerente
615
210k
Optimising Largest Contentful Paint
csswizardry
37
3.4k
Code Review Best Practice
trishagee
70
19k
Testing 201, or: Great Expectations
jmmastey
45
7.6k
Embracing the Ebb and Flow
colly
87
4.8k
Facilitating Awesome Meetings
lara
55
6.5k
Making the Leap to Tech Lead
cromwellryan
135
9.5k
BBQ
matthewcrist
89
9.8k
How GitHub (no longer) Works
holman
315
140k
Music & Morning Musume
bryan
46
6.8k
Transcript
zshͱԾ ϚωʔδϟͰ շదλʔϛφϧੜ׆ άϦʔגࣜձࣾ ։ൃຊ෦Πϯϑϥ౷ׅ෦ ඌܗ ெढ़ 119݄12݄༵
ΦϥΫϧͳ͏ 119݄12݄༵
About me ඌܗ ெढ़(͓͕ͨ ͷͿͱ͠) @nobu666 http://www.facebook.com/nobutoshi.ogata άϦʔגࣜձࣾ ։ൃຊ෦Πϯϑϥ౷ׅ෦ 2011/8/1ʙ
[email protected]
119݄12݄༵
͍··Ͱͬͯͨ͜ͱ ຊΞϧΰϦζϜגࣜձࣾ डୗ։ൃ ҩྍܥ/ༀܥͷγεςϜ χϑςΟגࣜձࣾʹɺNECϏοά ϩʔϒגࣜձࣾʹ2΄Ͳৗறͯ͠ɺ WebΞϓϦͷઃܭʙ։ൃʙӡ༻·Ͱ 119݄12݄༵
͍·ͬͯΔ͜ͱ ήʔϜ࡞ͬͯ·ͤΜ ϝʔϧͱ͔ɺͷMySQL Proxyͱ ͔ɺͦͷลͷαʔϏεج൫Λ୲͢Δ νʔϜ શจݕࡧͷϦϓϨʔε͡Ί·ͨ͠ 119݄12݄༵
ͦΜͳΘ͚Ͱ λʔϛφϧͱ ྑ͠Ͱ͢ 119݄12݄༵
͜ͷεϥΠυͷओࢫ zsh͜Θ͘ͳ͍Α!! ԾϚωʔδϟ͜Θ͘ͳ͍Α!! ͜ͷ2͕ͯ͢ͳͷͰɺ͢Ͱʹ͍ࠐ ΜͰ͍ΔਓʹΓͳ͍༰Ͱ͢ɻ ྃ͝ঝ͍ͩ͘͞ɻ 119݄12݄༵
ΞδΣϯμ zshɺscreenΛ͍࢝Ί͖͔͚ͨͬ ศར͞ͷҰΛ͝հ Ͱઃఆ͕໘ͳΜͰ͠ΐʁͳํ ·ͱΊ 119݄12݄༵
zshͱscreenΛ ͍࢝Ί͖͔͚ͨͬ 119݄12݄༵
Development Environment Conference 2006/9/9 5લ……ͩͱ…ʁ ड։͔࢝Β3Ͱຬһʹ http://b.hatena.ne.jp/t/decon zshίϐϖͰ͍ͬͯͨͷͷɺ screenͬͯͳ͔ͬͨ 119݄12݄༵
DEConҎલ ɹ_______________________ ɹɹɹɹɹʻ◦√ɹɹͦͬ͘͏ͩΊ͔ɾɾ!! ɹɹɹɹɹ ͘͘ɹɹɹ࡞ۀ͢Δαʔόʔ͕ଟ͗͢Δ ɹɹɹɹɹ ը໘͕PuTTYͩΒ͚ʹ ͳͬͯ͠·͏ɾɾ!! 119݄12݄༵
DEConҎޙ ________________________________ ~| \◦ େৎ͔ʁBOY ∥\ <◦> ∥/ ∥ /│ >> \│ ɹ screen͞Μʂʂ
119݄12݄༵
screen ԾϚωʔδϟͷҰछ screen tscreen tmux byobu 119݄12݄༵
119݄12݄༵
tmux!! ͣͬͱscreenͰ͕ͨ͠ɺࠓճͷεϥΠ υͷͨΊʹͪΐͬͱ͍࢝ΊͨΒΑ ͔ͬͨ!! ͱ͍͏Θ͚Ͱվफ͠·͢ ʼʻ جຊతʹҰॹͰ͕͢ɺσϑΥϧτͰ ͦΕͬΆ͍ઃఆʹͳ͍ͬͯ·͢ 119݄12݄༵
screen/tmuxͷ ͏Ε͍͠ͱ͜Ζ 119݄12݄༵
Α͏ͧ͏͞Μͱ͔ͿΒͳ͍ൣғͰ ͳ͕Β࡞ۀ ׂͯ͠ϩάΛݟͳ͕Β ͍ͭऴΘΔͷ͔Α͘Θ͔Βͳ͍όονͷىಈ σλονͯ͠ؼΔ ϩάΛͤΔ ڭҭͷҰͱͯ͑͠Δ ϚϧνΞλονϞʔυ 119݄12݄༵
zshͷ ͏Ε͍͠ͱ͜Ζ 119݄12݄༵
119݄12݄༵
ཤྺͷΓํ͕͏Ε͍͠ ෳߦʹΔίϚϯυཤྺͷΓํ ͔͠ΤσΟλͷΑ͏ʹ్தΛॻ͖ ͑ͨΓͰ͖·͢ nobu666@cherub $ for n in 1
2 3 for# do for# echo test; for# done test test test nobu666@cherub $(͜͜ͰC-p) nobu666@cherub $for n in 1 2 3 do echo test; done 119݄12݄༵
ࢉज़ԋࢉ͕͏Ε͍͠ nobu666@cherub $ zmodload -i zsh/mathfunc nobu666@cherub $ echo $((
sin(1) )) 0.8414709848078965 nobu666@cherub $ echo $(( log10(2) )) 0.3010299956639812 nobu666@cherub $ echo $(( sqrt(2) )) 1.4142135623730951 nobu666@cherub $ repeat 3 echo $(( rand48() )) 0.9822596229634506 0.37442021252918423 0.13525322333015666 119݄12݄༵
ελοΫ͕͏Ε͍͠ ͬͨΒ͍͠configureΦϓγϣϯॻ͍ ͯΔ్தʹɺ;͍ʹ --help ͕Έͨ͘ͳ Δ C-a C-kͯ͠configure --helpͯ͠C-y……? ESC-q
Ͱ͓̺!! 119݄12݄༵
glob͕͏Ε͍͠ important.cҎ֎ͷ*.cΛফ͍ͨ͠ rm *.c~important.c *.txtҎ֎Λফ͍ͨ͠ rm *~*.txt find . -name
‘*.c’|xargs grep hoge grep hoge **/*.c 119݄12݄༵
άϩʔόϧΤΠϦΞε͕͏Ε͍͠ hogehoge | piyopiyo tail -f /var/log/php.log G Fatal ls
-la L ޙΖʹύΠϓͰͭͳ͛ͯɺׂͱΑ͘͏ͷ શ෦ొ head,tail,grep,sort,uniq,lv,wc,sed,awk... 119݄12݄༵
ϚϧνϦμΠϨΫτ͕͏Ε͍͠ echo “test” > f1 >f2 echo “TEST” >file? <
f1 <f2 < f1 > f3 119݄12݄༵
ϓϩηεஔ͕͏Ε͍͠ ͱࢥͬͨΒbashͰͰ͖ΔΒ͘͠… (´ɾωɾʆ) paste <(hoge) <(moge) diff -u <(hoge|piyo) <(hoge|moge)
αʔόʹtmpϑΝΠϧ࡞Γͨ͘ͳ͍ͱ͖ ͱ͔ʹͲ͏ͧ 119݄12݄༵
Ͱઃఆ͕ ΊΜͲͦ͘͞͏ 119݄12݄༵
ͦΜͳ͋ͳͨͷͨΊʹ zshͷ߹ oh-my-zsh https://github.com/robbyrussell/oh-my-zsh gitͰ͖࣋ͬͯͯthemeΛબΜͩΒɺͦΕͬΆ͍ ઃఆ͕͞Εͯ·͢ https://github.com/robbyrussell/oh-my-zsh/wiki/ themes 119݄12݄༵
ͦΜͳ͋ͳͨͷͨΊʹ(2) screenͷ߹ screen wrapper byobu tmux ͲͬͪσϑΥϧτͰɺͳΜ͔ͦΕͬ Ά͍ઃఆ͕ೖͬͯ·͢ 119݄12݄༵
DEMO 119݄12݄༵
·ͱΊ ݹͷಓ۩ͱ͖ͬͭʹ͍͘ ͕ɺ֮͑Δͱڧྗ zshͦͦ͜͜ރΕ͖ͯͨ Έ߹Θͤ ΦϨΦϨڥ 119݄12݄༵
άϦʔͰ ٕज़ऀΛେืू ͍ͯ͠·͢ʼʻ 119݄12݄༵
͝ਗ਼ௌ ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ 119݄12݄༵