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
コマンド履歴にタグを つけるCLIツールを作った
Search
ryosukes
October 24, 2017
Technology
0
2.1k
コマンド履歴にタグを つけるCLIツールを作った
ryosukes
October 24, 2017
Tweet
Share
More Decks by ryosukes
See All by ryosukes
ALBと外部IDプロバイダーで認証しつつ、LaravelではGate・Policyを使わずシンプルに アクセス制御する方法
ryosukes
0
110
北欧、暮らしの道具店を支えるAWSマルチアカウント運用 / hokuohkurashi aws multi account
ryosukes
0
17k
フィットする暮らしを支えるSRE 2021
ryosukes
1
3.7k
EKSではなくECSを採用する理由
ryosukes
0
2.7k
RegExp Error caused by PHP upgrade 5.6 to 7.2
ryosukes
0
3k
Hello kubernetes
ryosukes
0
1.6k
Other Decks in Technology
See All in Technology
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
310
「違う現場で格闘する二人」——社内コミュニティがつないだトヨタ流アジャイルの実践とその先
shinichitakeuchi
0
250
テストセンター受験、オンライン受験、どっちなんだい?
yama3133
0
210
技術選定、下から見るか?横から見るか?
masakiokuda
0
190
AI との良い付き合い方を僕らは誰も知らない (WSS 2026 静岡版)
asei
1
270
会社紹介資料 / Sansan Company Profile
sansan33
PRO
11
390k
Scrum Guide Expansion Pack が示す現代プロダクト開発への補完的視点
sonjin
0
550
自己管理型チームと個人のセルフマネジメント 〜モチベーション編〜
kakehashi
PRO
5
2.5k
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
180
迷わない!AI×MCP連携のリファレンスアーキテクチャ完全ガイド
cdataj
0
410
2025年 山梨の技術コミュニティを振り返る
yuukis
0
150
松尾研LLM講座2025 応用編Day3「軽量化」 講義資料
aratako
15
4.9k
Featured
See All Featured
The Power of CSS Pseudo Elements
geoffreycrofte
80
6.1k
Practical Orchestrator
shlominoach
190
11k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
140
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
1.9k
The untapped power of vector embeddings
frankvandijk
1
1.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
1k
Paper Plane (Part 1)
katiecoart
PRO
0
2.9k
30 Presentation Tips
portentint
PRO
1
180
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
190
Building Applications with DynamoDB
mza
96
6.9k
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Transcript
ίϚϯυཤྺʹλάΛ ͚ͭΔCLIπʔϧΛ࡞ͬͨ 2017.10.24 ryosukes (kurashicom.inc)
ࣗݾհ ࠤʑ ྄༞(ryosukes/ciger47) 85ੜ·Εͷٶग़ 16͘Β͍ϥοϓͬͯ·͢ ࠷ۙస৬͠·ͨ͠ ———>
πʔϧΛ࡞ͬͨഎܠ
CLIͰૢ࡞͢Δ͜ͱଟ͍͚ͲΑ͘ΕΔ
εχϖοτͱ͔࡞Δͷ໘
ཤྺḷΔͷʹΊͬͪΌpecoͬͯΔ
ཤྺʹλά͕͚ͭΒΕΕྑ͍ͷͰ
࡞ͬͨ
https://github.com/ryosukes/histag
ͲΜͳײ͡ʁ
ಈ͖ 1. $ histag add ͱଧͭͱpecoىಈ 2. ཤྺ͔Βదʹબ 3. ඪ४ೖྗʹͳΔͷͰίϝϯτΛଧͭ
4. $ go #golang࠷ߴ Έ͍ͨʹίϝϯτͰώετϦʔ ϑΝΠϧʹه͞ΕΔ(࣮ߦ͞Εͳ͍)
ಈ͖ 1. $ histag add ͱଧͭͱpecoىಈ 2. ཤྺ͔Βదʹબ 3. ඪ४ೖྗʹͳΔͷͰίϝϯτΛଧͭ
4. $ go #golang࠷ߴ Έ͍ͨʹίϝϯτͰώετϦʔ ϑΝΠϧʹه͞ΕΔ(࣮ߦ͞Εͳ͍)
ಈ͖ 1. $ histag add ͱଧͭͱpecoىಈ 2. ཤྺ͔Βదʹબ 3. ඪ४ೖྗʹͳΔͷͰίϝϯτΛଧͭ
4. $ go #golang࠷ߴ Έ͍ͨʹίϝϯτͰώετϦʔ ϑΝΠϧʹه͞ΕΔ(࣮ߦ͞Εͳ͍)
ಈ͖ 1. $ histag add ͱଧͭͱpecoىಈ 2. ཤྺ͔Βదʹબ 3. ඪ४ೖྗʹͳΔͷͰίϝϯτΛଧͭ
4. $ go #golang࠷ߴ Έ͍ͨʹίϝϯτͰώετϦʔ ϑΝΠϧʹه͞ΕΔ(࣮ߦ͞Εͳ͍)
Ͳ͏͔ͬͨ
ϙΠϯτ CLI࡞ࢧԉπʔϧͷcobra ώετϦϑΝΠϧͷࢦఆ pecoݺͼग़͠ CLI্Ͱͷίϝϯτͷ͚ํ
cobra ؆୯ʹCLIπʔϧ࡞ΕΔcobraΛ༻ ༗໊ͳͷͰ͙͙ΕҰൃ
ώετϦϑΝΠϧͷࢦఆ history := os.Getenv(“HISTFILE”) ͰڥมಡΈࠐΈ σϑΥϧτͰ͕ۭͩͬͨͷͰγΣϧͰύεࢦ ఆɻվળ͍ͨ͠
pet ͱ͍͏εχϖοτ࡞πʔϧΛࢀߟʹͨ͠ ͜Εgolang pecoݺͼग़͠
ίϚϯυͱཤྺΛ exec.Command() ʹ͠ ݁ՌΛऔಘͯ͠ॻ͖ग़ͯ͠Δ͚ͩɻ pecoೖͬͯͳ͍ͱࢮ͵
CLI্Ͱͷίϝϯτͷ͚ํ γΣϧεΫϦϓτ # ͑Δ͚ͲCLI্ͰجຊNG zshͰ setopt interactivecomment ͕ඞཁ : ͱ͍͏ʮԿ͠ͳ͍ίϚϯυʯΛݕ౼͕ͨ͠ؾ࣋
ͪѱ͍ͷͰΊͨ Ζ͏ͱ͢Δͱ $ ls ;: ‘golang࠷ߴ’ ͱͳΔ
ࠓޙ ຊޠ͕Խ͚Δ͜ͱ͕͋Δόά(க໋త)Λ͢ ֯εϖʔε͕ೖΔͱͦΕҎ߱ʹॻ͍ͨͷ͕ίϚ ϯυऴྃޙʹ࣮ߦ͞ΕΔόά(க໋త)Λ͢ GithubͷϦϞʔτϦϙδτϦʹ͋ΔStaleϒϥϯν ΛgraphqlͬͯҰׅআ͢ΔπʔϧΛ࡞Δ༧ఆ
͋Γ͕ͱ͏͍͟͝·ͨ͠