エンジニアのソフトウェア的愛情

または私は如何にして心配するのを止めてプログラムを・愛する・ようになったか

2017-11-01から1ヶ月間の記事一覧

Duck Typing 〜 Elixirの多態

# 鶩 defmodule Duck do defstruct name: nil end # 犬 defmodule Dog do defstruct name: nil end # 猫 defmodule Cat do defstruct name: nil end # 鳴くプロトタイプ defprotocol Sound do def sound(_) end # 鶩が鳴く実装 defimpl Sound, for: Duck do …

Amazon CloudWatch Logs からログを取得する gem を書いた

AWS に CloudWatch Logs というサービスがあります。 Amazon CloudWatch Logs とは? - Amazon CloudWatch ログ コンソールが用意されていますが、正直使いやすくありません。 awslogs という、CloudWatch Logs からログを取得するコマンドラインツールがあり…

複数のテキストファイルの内容を横に並べて出力する

複数のテキストファイルの各行を横に並べて表示したいとき、たとえば次のような abc.txt と 123.txt というファイルがあったとき、 abc.txt: A B C 123.txt 1 2 3 次のようにファイルディスクリプタを指定してリダイレクトすると同時に読み込めるので、あと…

前日の日付を取得する

#!/bin/bash # 時刻を引数で指定されなかった場合に、現在時刻から前日の日付と今日の日付を取得する # # 日付を取得するのであれば `date` コマンドを使うのがよいのだけれど、 # オプションに差があるので使い慣れた Ruby に逃げた。 # # | 系統 | コマン…