ようへいの日々精進XP

よかろうもん

bash

コマンドラインで URL デコードする一例

この記事は YAMAP エンジニア Advent Calendar 2020 の九日目になる予定です。 qiita.com tl;dr URL エンコードされた文字列を、コマンドラインでシュッとデコードしたかったので調べたのでメモ。 URL エンコードされる文字列は以下の通り。 負けない事 投げ…

Elasticsearch 検索周りTutorial (2) 〜 シェルスクリプトで scroll API を操作する 〜

tl;dr Abema TV の番組データが登録されている Elasticsearch scroll API を利用して検索結果の全レコードを取得する シェルスクリプト 動かしてみる 以上 参考 tl;dr inokara.hateblo.jp 前回からの続きです. 検索ということではありませんが, 念願のシェル…

シェルスクリプトを書く時には set -e をつけた方がいいのかな...どうなんだろう

tl;dr for example 解決策 その 1 〜 がんばってエラーハンドリングを実装する 〜 その 2 〜 set -e を付与する 〜 注意点 再掲 実例 (1) 実例 (2) 〜 grep コマンド 〜 以上 tl;dr とあるプロジェクトのデプロイを CircleCI で実行していて, いくつかのコマ…

Alpine Linux Docker イメージを利用した Dockerfile 内で if else を使う時のメモ

tl;dr 要件 Dockerfile ハマったところ 以上 tl;dr Alpine Linux な Docker イメージを利用して Dockerfile を認めた際, カジュアルに if eles を使ったらちょっとハマったのでメモしておきます. 要件 Alpine Linux なコンテナイメージを使う ビルド時の引数…

bash の select は令和の時代も役に立つ, その一例

tl;dr man bash 例 若干の Kubernetes クラスタを選択したい Kubernetes Pod を選択したい 以上 tl;dr ホントにちょっとした運用ツールを bash で作っていて, 複数の選択肢をリストアップしてメニューとして選択出来るようにしたいなーと思っていたら, bash …

ギョームで使うシェルスクリプトを社内に配布する方法を検討した

tl;dr シェルスクリプトサンプル 配布パターン (1) 〜 Amazon S3 に設置して配布する 〜 S3 バケットの設定 セットアップシェルスクリプト 実際の配布からスクリプトの実行までの流れ 配布パターン (2) 〜 Docker コンテナで配布する 〜 おっ, S3 よりもモダ…

vim + memo でメモを取って, そのメモを出来るだけ速やかに Slack に貼っつける方法を考えた

tl;dr メモを Slack に共有したい コピペでも プラグインスクリプト こんな感じ 以上 tl;dr さっとメモを vim で書く為に, mattn さんの memo を使い始めました. vim に限らず, 好きなエディタでさっとメモをコマンドラインから書けるというのはとても気持ち…

ワンラインで Unixtime から Datetime に変換したいくさ

はじめに Ruby だと Python だと bash だと 以上 はじめに ぽーんと unixtime を渡されても、これはいったい何時何分なんやって思うことがある。 そんな時にコマンドラインでちゃちゃっと変換出来たらカッコイイかな…ということで… Ruby だと $ ruby -v ruby…

EBS スナップショットから EC2 を復元するシェルスクリプトの例

ということで なんばしよっと スナップショット アンサーソング(復元) 以上 waiter メモでした ということで 以下のように OS と DATA で 2 つの EBS が繋がった EC2 でメンテナンスを行う際に、事前にスナップショットを取得しておくのだが、仮にメンテナ…

何かを入力するまで終了出来ない bash スクリプト(read を使った入力待ち)

どうも、星野源です。 サンプル #!/usr/bin/env bash oreno_input() { while true;do echo "何か入力して下さい" trap 'continue' 2 read key case $key in [a-zA-Z]*) # 英数字 echo -e "$key" break ;; [^\x01-\x7E]*) # 2 バイト文字 echo -e "$key" brea…

ワンライナーで ping の平均値を取得するメモ

tl;dr ping の平均値(avg の部分)を取得して growthforecast で可視化したかったのでメモ。 参考 ja.stackoverflow.com ping の平均値を取得する ping -c 5 8.8.8.8 | tail -1 | tee >(cut -d/ -f5) > /dev/null 実際に試してみると以下のような感じ。(通…

Bash でファイル名から拡張子とファイル名を分割して別のファイル名を生成するメモ

ども、かっぱです。 tl;dr 以下のようにファイル名から拡張子とファイル名を分割してファイル部分に日付(epoch time)をつけた上で元の拡張子を付けるシチュエーションが発生した。 旧ファイル名:foo.txt 新ファイル名:foo_${epoch time}.txt 参考 te2u.h…

Bash で変数内の文字列を置換するショートメモ

ども、初老丸です。 tl;dl シェルスクリプトで変数内の文字列を置換したり、変数に代入したファイルパスからファイル名だけを取り出したいと考える際に真っ先に sed でゴニョゴニョを思いつくが、Bash だと Bash 内で完結出来ることを以下の記事でしったので…

Bash de hash

はじめに Bash で連想配列が出来るのを知って感動的だったのでメモ (追記)参考にさせて頂いたサイトとタイトル等が被ってしまい大変申し訳ございません 参考 bashの小技?その4(配列、連想配列とループ) bashでハッシュ(連想配列的な意味で) こんな感じ…