多段パイプの終了ステータス実装
終了ステータスとは? スクリプトが終了したときに、スクリプトを実行したツールに返される値。 // 終了ステータス "0" int main(){ return (0); } // 終了ステータス "…
View ArticleBash スクリプトのユニットテスト入門: Bats を使ってみよう
はじめに Bash スクリプトは非常に便利ですが、その信頼性を確保するためには適切なテストが不可欠です。この記事では、Bats(Bash Automated Testing System)を使って …
View ArticleRHEL8系でbashでtabキー補完が効かない時の対処方法
bashでtabキー補完 bashを使用しているとコマンドを補完してくれます。 下記の通りです。 systemcまで打ち、tabを入力すると残りのtlを補完します。 でも、startなどのサブコマン…
View Article【Rails/heroku】pushしたらH10でアプリがクラッシュしたので対処する
herokuで作成したアプリにデプロイするために git push heroku branch_name:main #pushできたのを確認後 heroku open したところエラーが発生しました。…
View Articleコードを最後まで終わらせるコード
brew upgradeのダウンロードが途中で終了する 外出する直前にbrew upgradeを走らせて家を出て、帰ってきたらターミナルプロンプトにエラーが表示されていてダウンロードが途中までしか終…
View ArticleLinuxコマンドのワンライナーで連続した日付を生成したい
Linuxコマンドで連続した日付を生成したいことがたまにあるので、自分用のメモとして残しておきます。たとえば2023/09/07から15日連続した日付を生成したい場合、次のようなワンライナーで実現可…
View ArticlePipでインストールされている全てのPackageを一括UpgradeするためのOne-liner
はじめに PipでPython libraryを管理する場合、pip list -oなどでUpgradeされたPackageを確認すると、思いのほか大量にある場合がある。一つ一つ手動でUpgrade…
View ArticleMySQLのDBを別のサーバに定期バックアップする
背景 最近監視システムのMySQLのDBバックアップができていないことがわかったので、ちゃんとバックアップして別のサーバで保管したいと考えました。 準備 今回は、別のサーバ側にマウントしてマウント先…
View ArticleZabbixの通知を追加投資なしでLINE WORKSに飛ばす方法(API2.0対応版)
まずはじめに 前回の投稿同様、ネットに転がっている情報を切り貼りして作ったクソコードなので、利用する場合は自己責任でお願いします。 やりたいこと ZABBIXのサーバ監視の通知をLINE WORKS…
View ArticleSSHで叩かれたコマンドを記録する
モチベーション デプロイメントツールなどで、SSHで対象のサーバに入ってよしなに色々してくれるものがあります。 中で何やってるのか見てみたいなーという時がちょこちょこあるのですが、あまりピンとくる方…
View ArticleSSHで叩かれたコマンドを許可したしなかったりする
モチベーション SSHで叩かれたログをみたい、という話は昔からあったのですが。 https://qiita.com/nfwork01/items/439aafbca251d3835952 その延長線…
View Articlebash配列
概要 Bashの配列についていつも分からなくなるのでメモ的に作成。 配列を定義する $#{ARRAY[@]}で配列を操作できる。 ${ARRAY}だと先頭の要素がとれる。 ARRAY=(1 2 3 …
View Articleexpr コマンドで数値判定を行う(とバグになるシェルスクリプト)
はじめに シェルスクリプトで数値判定(整数判定)を行う方法として expr コマンドを使う方法が紹介されますが、これがうまく行かない例、つまり書いたらバグになる例を紹介します。 expr で数値判定…
View ArticleSubversionで日本語ファイル名(unicode)のNFC/NFD問題をやり過ごすスクリプト
動機 古くからOSX/macOSのクライアントも含めて運用しているSubversionのレポジトリで、svn statusしたときに日本語の濁点や半濁点を含むファイル名に関して正しくステータスが表示…
View ArticleLinux: システム監視ソフト「Prometheus」を無料インストールしてみた
実施環境: [testuser@testhost ~]$ uname -a Linux testhost 4.18.0-448.el8.x86_64 #1 SMP Wed Jan 18 15:02:…
View ArticleBashでStorybookファイル作成を自動化してみた
はじめに 業務で既存環境にstorybookを導入する機会があったのですが、その際に一つ一つ手作業で書くのが面倒でしたので楽をするべくbash scriptを書くことにしました。 やりたいこと 今回…
View ArticleVScode上でシェルスクリプトのデバッグ方法
今回はVScode上でシェルスクリプトのデバッグ方法を紹介します。 rogalmicさんが作ったBash Debugエクステンションを使ってデバッグしていきます。 https://marketpla…
View Articleシェルスクリプトの基本構文とかをまとめてみた
シェルスクリプトを書く機会があり、色々調べたのでメモとして残します。 シェルスクリプトとは? シェルスクリプト(Shell Script)は、コンピュータのオペレーティングシステムのコマンドラインシ…
View Articlebashでテキストファイルで特定文字列を含む行を抽出する
はじめに テキストファイルやエクセルで作成されたタスク管理表を自分で見るためにbashの特定文字列を含む行の抽出方法を調べた。 抽出方法 上記の内容を実現するために以下の二つを調べた。 テキストファ…
View ArticleProxmox VEでVM/コンテナをまとめてハイバネート・シャットダウンするスクリプト
定時シャットダウン用。基本的に全部ディスクにハイバネートして、コンテナとかPCIパススルーとか失敗したVMはシャットダウンする。 #!/bin/bash # VMとコンテナのリストを取得 VMS=$…
View Article