はい!今やってます!

Work Pertly, Live Idly

bash

リポジトリ一括で落として来たいときに打つコマンド

特定のユーザーで特定のオーガナイザーションのGithubリポジトリを一括でCloneしてきて、zipにまとめたい時に叩くコマンド mkdir `date '+%Y%m%d'` && curl -u ${USER_NAME} "https://api.github.com/orgs/${ORGANIZATION}/repos?per_page=100&page=1" | gre…

シェルの引数あれこれ

シェルで引数を取得したい場合は $1:1つ目の引数 という感じで取得できるが、 $0:実行時のコマンド名 $#:引数の数 $@:実行時に指定された全パラメーター というような指定も可能。 というのは割と常識なんだけど、 $BASH_SOURCE:実行時のコマンド名 と…

パイプラインの左側でエラーが発生したら処理を止めたい

bashに-eのオプション #!/bin/bash set -eu をつけたとしても、パイプラインの左側のコマンドにエラーがある場合に処理が停止しない。 が pipefailのオプション set -euo pipefail を設定してやると この場合は"hoge"が出力されるが #!/bin/bash set -eu fal…

bashでローカル変数を扱う

#!/bin/bash function foo() { # ①ローカル変数を定義して代入 # local hoge = "hoge" # ②ローカル変数を定義 local fuga # ローカル変数に代入 fuga="fuga" } foo echo $hoge # 空出力 echo $fuga # 空出力