Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

CLIツール作るの楽しい

805 visualizaciones

Publicado el

第37回シェル芸勉強会@大阪サテライトのLTで使った資料です

Publicado en: Ingeniería
  • Sé el primero en comentar

  • Sé el primero en recomendar esto

CLIツール作るの楽しい

  1. 1. CLIツール作るの楽しい たいちょー
  2. 2. みなさん#!/bin/bash(こんにちはの意) たいちょーです  @xztaityozx_001 母語はC# 明日から海外へ行きます
  3. 3. 近況 前回のシェル芸勉強会 難読化シェル芸 本題
  4. 4. 前回のあらすじ! 大雨で中止になった第36回シェル芸勉強会@大 阪サテライト!前日にICPCに参加したら家に帰 れなくてゼミ室に泊ってたはいいけど結局大雨 で動けないしもうどうしたらいいの~~ ~!??!?!?!
  5. 5. 難読化シェル芸 ゼロ幅文字難読化シェル芸(kanataさん) https://www.slideshare.net/kanata1/unicode-104771309 ゼロ幅スペースを利用したヤバすぎるヤツ! 難読化ここに極まれり(何も見えないため)
  6. 6. ゼロ幅文字難読化シェル芸 手法 文字⇒16進数⇒4進数⇒4種のゼロ幅文字へ置換 例
  7. 7. ゼロ幅文字難読化シェル芸 絶句した 手の加えようがない 記号オンリーは課題があった ヤバい
  8. 8. 本題
  9. 9. 実は私は 趣味がCLIツールづくりなんですよ 難読化シェル芸ツール xztaityozx/nandokuka YouTubeのURLをVLCに食わせるだけのツール xztaityozx/yov
  10. 10. CLIツールと私 高校3年生の時にシェル芸人を自前で発症 授業で使うCLIツールを作る 楽しくなる
  11. 11. 実は私は 院生なんですよ 授業とかなんかいろいろあってたいへん! 研究もしなくちゃ!
  12. 12. CLIツールを作る事例1 まずは無限にデータを取らないと!👍 ↓ 手作業はヤバいな・・・☻ ↓ CLIツールを作って楽しよう!
  13. 13. 手順 1. 対象が吐き出すデータを眺める 2. ほしいと思ったデータの形式を思い浮かべる 3. シェル芸する 4. まとめる(シェルスクリプト) 機能を増やしたくなったら別の言語に移る
  14. 14. 改良して運用する 数多の改良を重ねた 途中で言語を切り替える 今はただ待っているだけでOKにまでなった 同期にも使わせた フィードバックがすぐ来るので良い
  15. 15. CLIツール事例2 cat ~/.bash_history | grep cd | wc -l 皆さんcpd(cd per day)はいくつぐらいですか CLIで生きるうちの大半はlsとcd よく聞く話ですね
  16. 16. ところで cdコマンドのラッパー使ってますか? enhancd b4b4r07/enhancd z rupa/z 高級なcdコマンドがあると<TAB><TAB>しなくて よくなるのでいいですよね
  17. 17. cdxよろしくお願いいたします 実は僕もcdコマンドのラッパー作ってます cdx xztaityozx/go-cdx
  18. 18. cdxの機能 ヒストリー ブックマーク シェル芸で作ったリストから選んでcd そのたもろもろ
  19. 19. ヒストリー機能 これまでcdしてきたパスから1つ選んでcdできる 選択にはfzfとかpecoを使う あとでデモをします
  20. 20. ブックマーク機能 自由にブックマークを"追加できる" ブックマークから1つ選んでcdできる 選択にはfzfとかpecoを使う
  21. 21. シェル芸で作ったリストから選んでcd ghq listの出力をcdxに渡す 相対パス以下にあるディレクトリ一覧をcdxに渡す など
  22. 22. デモをします します
  23. 23. あなたのCLIツールはなんですか cdxをよろしくお願いいたします GitHubの★を押していただけると嬉しいです 皆様ご自慢のツールもぜひ知りたいです

×