O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

初心者向けシェル芸勉強会

1.464 visualizações

Publicada em

初心者向けシェル芸勉強会のイントロ資料

Publicada em: Tecnologia
  • Seja o primeiro a comentar

初心者向けシェル芸勉強会

  1. 1. 初心者向け シェル芸勉強会へ ようこそ 2015年12月6日(日)
  2. 2. まずは御礼 ご参加いただき 誠に ありがとうございます
  3. 3. まずは確認 • 標準入力、標準出力 • パイプ • リダイレクト • 単機能コマンド • grep、sort、uniq • 多機能コマンド • sed、awk
  4. 4. 今回の内容 • ウォーミングアップ問題を解く • 実践で手を動かすのが重要 • 第2回シェル芸勉強会の問題を解く • 問題の難易度が比較的容易 • 解答例が出てないのでスパルタ教育が可能
  5. 5. シェル芸的考え方 • シェルの制御構造などは少ない • パイプでストリーム的処理 • 使えるものは何でも • Ruby、PHP、CommandPrompt、PowerShellでの参戦も • 多様性は大事 • いろんな解き方を考えるのも重要
  6. 6. コマンドを知る •テキスト処理系 •単機能 •cat、grep、sort、uniq、 tail、head、tr、paste、 diff、comm •多機能 •sed •ファイル操作系 •ls、find • シーケンス生成 •seq、jot • その他 •xargs、time、tee、echo、 printf、bc、curl • 最終兵器 •awk •perl、ruby (-alne)
  7. 7. 多機能エディタsed • パターン参照: &、12、 • 行頭と行末に文字列追加 • sed 's/^/行頭だっけ/' • sed 's/$/行末だってよ/'
  8. 8. 最終兵器awk • パターン{アクション} • $1%2==0{print $2} •   連想配列 • {a[$1]=$2}END{for(v in a)print v,a[v]} • 特殊変数 NF、NR • 関数 substr($1,1,6)
  9. 9. Tukubaiコマンド • ユニケージ開発手法で利用 • Open版が公開 • Pythonで実装 • 商用版は高速高性能 ユニケージ技術情報はWebで https://uec.usp-lab.com/JOURNAL/CGI/JOURNAL.CGI? POMPA=LIST
  10. 10. Tukubaiコマンド • 複雑(に見える)処理が簡単に • awkで頑張らなくてもいい • 端末で調査や集計をする発想に 詳しくはWebで https://uec.usp-lab.com/TUKUBAI/CGI/TUKUBAI.CGI? POMPA=LIST
  11. 11. Tukubaiコマンド •日付時刻処理 •mdate、calclock、yobi •各種集計 •gyo、count、sm2、map •フィールド切出 •self、delf マニュアルはWebで https://uec.usp-lab.com/TUKUBAI_MAN/CGI/TUKUBAI_MAN.CGI? POMPA=LIST •行列変換 •tarr、yarr、tateyoko •データ結合 •loopj、loopx、join0、join1、 join2 •その他 •getfirst、getlast、juni、mojihame
  12. 12. シェル芸情報 • USP友の会 • https://www.usptomo.com • UEC - use engineers' community site • https://uec.usp-lab.com/ INFO/CGI/INFO.CGI? POMPA=LIST • 上田ブログ(会長) • https://blog.ueda.asia • 大チェッカー:シェル芸 人たち • https://daichkr.hatelabo.jp/ antenna/960679194075891200 • 稚拙ブログ • http://papiro.hatenablog.jp

×