シェルスクリプトで任意のオーナーが所有するGithubリポジトリを一覧表示する(ワンライナー)

Bash,Git,GitHub

はじめに

Githubで任意のオーナーが所有するリポジトリを全て確認したいのですが、Githubのリポジトリ一覧ページに到達するまで面倒ですよね。
( 僕がGithub不慣れなだけなのでしょうか? )

そこで、シェルスクリプト化していつでも一覧を表示できるようにしてみました。

スクリプト

hub-repos.sh

#!/usr/bin/env bash
set -o nounset
set -o noclobber

curl "https://api.github.com/users/${1:-${SNS_USERNAME}}/repos?per_page=100" 2>/dev/null | jq -r '.[].name'

必要なもの

  • jq コマンドが使えること

使い方

以下のいずれかで所有者を設定できます。

  1. 環境変数 SNS_USERNAME を設定する。 ( ex : export SNS_USERNAME=genzouw )
  2. スクリプトの第一引数を指定する ( ex : hub-repos.sh genzouw )

パスの通っている場所に配置してあげてください。

ひとこと

ずいぶん昔に作ったスクリプトの整理をしていて見つけました。
当時のスクリプトは、 jq を使っている部分に ruby -rjson -e 'JSON.parse(STDIN.read).each{|r|puts r["name"]}' と記述されていました。
ruby触っていた記憶なんてほとんど無いんですけどね。

Bash,Git,GitHub