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
760
1
Share
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
More Decks by Naoto Gohko
See All by Naoto Gohko
so this is KeyDB! So what.
naototty
1
750
asks Canonical about Ubuntu support and starts using Ubuntu
naototty
0
82
Rancher Harvester and KubeVirt HCI operator
naototty
0
450
ODC2020; "Rocky 8", Rocky Linux 8 story
naototty
0
590
私とOSC Hokkaido Love (私のOSC Hokkaido参加の振り返り)
naototty
1
500
GTB2020; Introduction to virtualization technology on GMO Tech Bootcamp
naototty
0
260
OSS Forum in Tokyo/Winter: Around the OpenStack world in 2019.
naototty
0
400
Use ubuntu canonical's multipass command
naototty
0
400
Bifrost Ironic Standalone deep dive for GPU baremetal cloud
naototty
0
320
Other Decks in Programming
See All in Programming
2026-03-27 #terminalnight 変数展開とコマンド展開でターミナル作業をスマートにする方法
masasuzu
0
290
AWS re:Invent 2025の少し振り返り + DevOps AgentとBacklogを連携させてみた
satoshi256kbyte
2
140
AI駆動開発がもたらすパラダイムシフト
ryosuke0911
0
110
ネイティブアプリとWebフロントエンドのAPI通信ラッパーにおける共通化の勘所
suguruooki
0
240
Kubernetes上でAgentを動かすための最新動向と押さえるべき概念まとめ
sotamaki0421
1
370
AI-DLC 入門 〜AIコーディングの本質は「コード」ではなく「構造」〜 / Introduction to AI-DLC: The Essence of AI Coding Is Not “Code” but “Structure”
seike460
PRO
0
210
存在論的プログラミング: 時間と存在を記述する
koriym
5
770
それはエンジニアリングの糧である:AI開発のためにAIのOSSを開発する現場より / It serves as fuel for engineering: insights from the field of developing open-source AI for AI development.
nrslib
1
820
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
490
Redox OS でのネームスペース管理と chroot の実現
isanethen
0
520
PHPで TLSのプロトコルを実装してみるをもう一度しゃべりたい
higaki_program
0
170
Claude Codeログ基盤の構築
giginet
PRO
7
3.9k
Featured
See All Featured
Leo the Paperboy
mayatellez
6
1.6k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
34
2.7k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.7k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
140
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
The Language of Interfaces
destraynor
162
26k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Keith and Marios Guide to Fast Websites
keithpitt
413
23k
Large-scale JavaScript Application Architecture
addyosmani
515
110k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
410
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
300
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
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に合わせ て「イベント・ドリブン」に ちょっとツールをリリースしてみ た話でした イベントに合わせてなんかリリースするとかとか、 が「イベント・ドリブン」という落ちでした