シェル(bash)で0埋めする方法
環境 OS : CentOS Linux release 8.5.2111 bash : GNU bash, バージョン 4.4.20(1)-release (x86_64-redhat-linux…
View Articleシェル(bash)でテキスト形式のパラメータファイルから文字を抽出する方法
環境 OS : CentOS Linux release 8.5.2111 bash : GNU bash, バージョン 4.4.20(1)-release (x86_64-redhat-linux…
View Article長いシェルコマンドを見やすくするためのバックスラッシュ(\)使用術 (Tips)
はじめに コマンドラインを使用する際、時として非常に長いコマンドを扱う必要があります。これらのコマンドは、一行に収めると読みにくくなることがあります。この問題を解決するためのシンプルながら強力なテク…
View Articleコマンドのバックグラウンド実行とログ管理
サーバー上でのコマンド実行とログ管理 みなさん、サーバー上でバックグラウンドで実行するコマンドのログ管理や、何日の何時に何のコマンドを打ったかのログを取るのに困っていませんか? 例えば、長時間実行さ…
View Articleリモートサーバーとのディレクトリ同士の差分があるかどうか判定する方法
結論:rsyncコマンドの--dry-runオプションを使います。 コマンド 以下のコマンドの出力結果でファイルのリストが出てきたらdiffがあります。 (rsyncコマンドは同期を行うコマンドで-…
View Article階層的なシェルスクリプトにおいて、childプロセスの終了を待つ
shell scriptで3階層の入れ子状のスクリプトを走らせたい。 また、i番目のchild process の全ての処理が終了してから、(i+1)番目のchild processを行いたい。 ナ…
View ArticleRHEL9における環境変数の読み込み順序とスコープ
はじめに 仕事でRHEL9を扱うことになり、環境変数周りの知識不足を痛感したためこの記事を書いています。 タイトルではRHEL9と銘打っていますが、他のディストリビューションでも基本的に同じだと思い…
View Article【備忘録】シェルスクリプトで条件文を絡めた処理を記述する
はじめに シェルスクリプトについて勉強したことを qiita にまとめています。 これまで、以下について学んできました。 Linux の基本操作を覚える 【備忘録】シェルのカスタマイズを学ぶ 【備忘…
View Articlegitを入れるとUNIXがついてくる
お伝えしたい情報 Windowsにgit入れるとUNIXコマンドがもれなくついてきて、とっても便利。インストールできるアプリが制限されている作業環境でもgitあれば困らない。perlもあるよ。 実際…
View Articleecho $-, $0, $PS1
The commands to inspect the state of the current shell environment You wouldn't need to know such s…
View Article備忘録 〜シェルの変数、計算式の書式まとめ(随時更新)
シェルの変数、計算絡みの書式についてメモ。 学習環境はbash(たまにzsh)です。 学習メモにつき、誤り等ありましたら、ぜひご指摘お願いします。 変数 代入 number=1 「=」の前後にスペー…
View Article【bash】キーで sort された連想配列のループ処理を実装
はじめに タイトルの通りですが、連想配列をキーで sort した後、ループ処理させる実装方法を備忘録として残しています。 前提 連想配列が以下のように定義されているとします。 declare -A …
View Article『SRP原則違反指数』を計測して、技術的負債に立ち向かう
はじめに 現在、弊組織全体で単体テストとリファクタリングの波がきておりコードをよくしていこうという機運の高まりを感じています。しかし、自分を含め多くの若手は『価値あるリファクタリング』の前段階で止ま…
View Articledocker-composeのcommandで、複数コマンドを実行する方法
はじめに docker-compose.ymlのcommandで、複数のbashコマンドを記述する方法を紹介する。gitlab-ci.ymlなどにも応用可能。 動作確認環境 Ubuntu 20.04…
View Articlebash shell豆知識
Replace a substring in file (20, 'm') in file: get_session.sql to (35, 'm'). 20 can be any number. sed -i "s/([0-9]\+,'m');/(35,'m');/" get_session.sql && cat get_session.sql…
View Article【Bash】プロセスとジョブについて
はじめに 今回は プロセス と ジョブ について書いていきます。 プロセス とは プロセスとは、OS 上で実行されているプログラムのことを指す。 Linux はマルチプロセスであり 、CPU がタス…
View Article【Bash】関数について
はじめに 今回は Bash における関数について扱っていきます。 関数の基本的な使い方 関数とは コード数が増加すると複雑化して、コードを理解するのに時間がかかる。 関数 を用いると、似た処理のコー…
View Article【Bash】trap、デバッグ、Cron 作成 について
はじめに 今回は trap、デバッグ、Cron 作成について触れます。 trap の利用 trap とは シェルスクリプトがシグナルを受け取った場合に実行される処理を trap で定義することができ…
View Article【Bash】systemd と systemctl
はじめに 今回は systemd と systemctl の学習備忘録です。 OS の起動プロセス OS は起動時に以下のフローでプロセスが起動されていきます。 最後に init プロセスが起動され…
View Article