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
2020/07/25 OSC Niigata/Online LT; about xlsx2cs...
Search
Naoto Gohko
July 25, 2020
Programming
1
720
2020/07/25 OSC Niigata/Online LT; about xlsx2csv-go-CLI
This LT is about my tool ; xlsx2csv-go-CLI .
https://github.com/naototty/xlsx2csv-go-cli
Naoto Gohko
July 25, 2020
Tweet
Share
More Decks by Naoto Gohko
See All by Naoto Gohko
so this is KeyDB! So what.
naototty
1
730
asks Canonical about Ubuntu support and starts using Ubuntu
naototty
0
73
Rancher Harvester and KubeVirt HCI operator
naototty
0
430
ODC2020; "Rocky 8", Rocky Linux 8 story
naototty
0
560
私とOSC Hokkaido Love (私のOSC Hokkaido参加の振り返り)
naototty
1
490
GTB2020; Introduction to virtualization technology on GMO Tech Bootcamp
naototty
0
250
OSS Forum in Tokyo/Winter: Around the OpenStack world in 2019.
naototty
0
380
Use ubuntu canonical's multipass command
naototty
0
370
Bifrost Ironic Standalone deep dive for GPU baremetal cloud
naototty
0
310
Other Decks in Programming
See All in Programming
最新のDirectX12で使えるレイトレ周りの機能追加について
projectasura
0
250
Amazon Bedrock Knowledge Bases Hands-on
konny0311
0
150
Honoを技術選定したAI要件定義プラットフォームAcsimでの意思決定
codenote
0
240
関数の挙動書き換える
takatofukui
4
680
Vueで学ぶデータ構造入門 リンクリストとキューでリアクティビティを捉える / Vue Data Structures: Linked Lists and Queues for Reactivity
konkarin
1
310
Querying Design System デザインシステムの意思決定を支える構造検索
ikumatadokoro
1
1.1k
AI駆動開発ライフサイクル(AI-DLC)のホワイトペーパーを解説
swxhariu5
0
1.1k
PyCon mini 東海 2025「個人ではじめるマルチAIエージェント入門 〜LangChain × LangGraphでアイデアを形にするステップ〜」
komofr
3
1k
チーム開発の “地ならし"
konifar
7
5k
Atomics APIを知る / Understanding Atomics API
ssssota
1
150
開発生産性が組織文化になるまでの軌跡
tonegawa07
0
170
Rails Girls Sapporo 2ndの裏側―準備の日々から見えた、私が得たもの / SAPPORO ENGINEER BASE #11
lemonade_37
2
170
Featured
See All Featured
Build The Right Thing And Hit Your Dates
maggiecrowley
38
2.9k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
670
VelocityConf: Rendering Performance Case Studies
addyosmani
333
24k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Why Our Code Smells
bkeepers
PRO
340
57k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
The Cult of Friendly URLs
andyhume
79
6.7k
Thoughts on Productivity
jonyablonski
73
4.9k
Designing for humans not robots
tammielis
254
26k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Transcript
イベント駆動開発?でできた xlsx2csv-go-cliと OSC Niigata Onlineまで OSC Niigata 2020 Online /
LT session 2020/07/25 @naoto_gohko 郷古 直仁
LT presenter(Itʼs me) • Naoto Gohko / 郷古 直仁 (@naoto_gohko)
• Cloud Service development divistion, GMO Internet Inc., • OpenStackでpublic cloudサービス • 最近の活動主体 • Japan OpenStack user会 / OSC onlineお⼿伝い(Zoom修⾏) • その他参加勉強会など • Rancher JP, PaaS, Serverless, SDNなど @MikumoConoHa
⼤学時代は⼭形の⽶ 沢(⼭形⼤学⼯学部) にいたので、新潟市、 ⻑岡市など出⾝の友 ⼈達が沢⼭いました (なにしてっがなぁ)
最近では、宮原さんと OSC(Open Source Camp)と称して コロナ前まで、 キャンプに出かけるなどやってい ました ここでも、新潟のお世話になるこ とに
なにせ「キャンプグッズ」と いえば新潟発のブランドが ⽼舗から新興まで、たくさん ありますからね
さてさてさて、 お集まりの皆さん、 OSC Niitaga 2020/Onlineも もう最後の⽅になりました
(☝ ՞ਊ ՞)☝ウェーイ
OSC Niitaga Online で LT申し込んだときに、 何やろうかなと
“xlsx2csv-go-cli” https://github.com/naototty/xlsx2csv-go-cli 作ったというより、 機能追加と修正してみたかな
なんとなく、名称から察する 感じですが、”*.xlsx” ファイル からcsvを⽣成するCLIです
https://github.com/naototty/xlsx2csv-go-cli
なんでこれを作ったか? 業務上、何かと”*.xlsx” ファイル に遭遇することがあり、shell scriptでライトにスクリプトに組 み込んで利⽤する (ちょっと加⼯してansible inventory(hosts) fileにしたり)
以下を組み合わせて動作します。 xslxファイルを扱うgolangのライ ブラリ “github.com/tealeg/xlsx” csvを扱うライブラリ "encoding/csv”
実際には、以下からforkして、機能追加した ものです tgulacsi/xlsx2csv colinmollenhour/xlsx2csv
使い⽅ CLIですので README.md を詳しくは参照お願いします
wgetでリリースにおいてあるbinary取ってくる # << chmod +x で実⾏権限つける
なにも⼊れ ずに実⾏す ると、usage
delimiter指定 ex)“-d ʻ,ʼ” 区切り⽂字を 指定する tab区切りは “-d TAB” (ドキュメント 書き忘れたw。
後で書きます)
delimiter指定 + Excel tab指定( “-i <0,1,2,…>”) 0から表の数インクリメント (表の番号 : 0,1,2,
… )
csvをstdoutではなく、ファイルに出⼒ “-o <file name>”
今後考えていること(issue⽴てよう) • 表としてのHeaderの位置を指定できるようにする • 表としてのHeaderを外部から指定できるようにする • 他のtableファイル対応 • Google SpreadsheetなどCloud
sheet, Libreofficeなど • Query表現の簡易対応 (like xo/xo, xo/usql) • HTTP(S)上にuploadされているファイルを直接stream(っぽく) で処理させる
OSC Niitaga 2020/Onlineに合わせ て「イベント・ドリブン」に ちょっとツールをリリースしてみ た話でした イベントに合わせてなんかリリースするとかとか、 が「イベント・ドリブン」という落ちでした