ひびのログ

日々ではないけどログを出力していくブログ

Bash

Git Hooks を複数実行したかった

何がしたかったのか Git でコミットをする前に、コミットに使われるユーザーの名前を表示したかった。 なぜ? 会社の PC で、会社のリポジトリだけでなく自分の個人リポジトリにもアクセスしている。 具体的には、dotfiles を GitHub で管理しているのでそれ…

シェル芸ロードマップ

シェル芸(シェルコマンド)の使い方を覚えるための課題を作ってみた。 内容は「自分はこんな感じで学んでいったような気がする」という完全なる主観。 課題 ファイル一覧を出す ls とよく使うオプション a, l, t, 1 ls のヘルプを見る ls --help, man ls ls…

mp3 ファイルのメタ情報に入っているタイトルを CLI で一括変更

iTunes で複数の関連する CD を取り込んだのだが、曲のタイトルが統一されていなかった。 具体的には、「[CD 番号]-[トラック番号]」みたいになってほしかったのに、1 つの CD だけ「トラックxx」みたいな形式でインポートされてしまった。 ファイル名を変え…

ブックマークレット化するスクリプト

FILE_PATH="ファイルパス"; echo 'javascript:(async () => {' "$(deno bundle ${FILE_PATH} | egrep -v '^// ' | tr -d '\n' | gsed -r -e 's/ +/ /g')" '})()' | pbcopy TS をコンパイルするときは // @ts-nocheck をつけてあげれば型チェックを無効にでき…

Git のチェックアウト履歴を確認する&そこから選択してチェックアウト

履歴がー……見たい! Git で直前にいたブランチに戻るのは git checkout - で出来ますが、それ以前って見ることが出来ないですよね。 でも、見たい。 そこでシェル芸ですよ シェル芸の定義以下略。 ほぼ参考 URL からのパクリですが、Mac で動かなかったりし…

Bash で OS の種類を判定する

もし動作しなければ教えていただけると嬉しいです。 現状、以下のOSが判定できます。 * Mac * CentOS * Amazon Linux * Ubuntu * Cygwin (Windows) ソースコード declare OS="unsupported os" if [ "$(uname)" == 'Darwin' ]; then OS='Mac' elif [ "$(expr …