Linux

シェルスクリプト

【Linux】rsyncコマンド使い方

rsyncコマンドとは scpコマンドの上位互換で、サーバー間でファイルの転送をするときに良く利用されるコマンド。 scpより優れている点は「差分を確認し、差分があったファイルだけを更新する」ところ。 基本構文 $ rsync オプション ...
ターミナル操作

【zsh】プロンプトにgitの状態を表示する

zshカスタマイズの一環として、プロンプトに現在のブランチ名と状態を表示するようにする。これで毎回git branchやgit statusを入力する必要がなくなる。 ゴール 手順 基本的なやり方はここに記載してある。 ①git-promp...
Docker

【Docker】コンテナに環境変数を渡す

やりたいこと APIキーなどの秘匿性の高い環境変数を、Dockerコンテナに環境変数としていい感じに渡したい。 docker composeなどを使わないシンプルな環境でこれを実行したい。 手順 ①まずはシンプルなDockerfile作成 ...
シェルスクリプト

ダブルクォートがエスケープされたjsonを整形する

やりたいこと ■Before bbb.json "{\"name\":\"hoge\",\"age\":12}" ■After { "name": "hoge", "age": 12 } 結論 $ cat bbb.json | jq -r ...
ターミナル操作

【Linux】grepコマンドのよく使うオプションだけ厳選

grepコマンドはファイルの中身の文字列を検索するのによく利用するコマンドである。様々なオプションがあるが、よく使うパターンのみを厳選した。 普通に文字列を検索する あるファイルの中の文字列を検索する 「grep ファイル名」でも検索できる...
HTTP

【Linux】curlコマンドでAPIのリクエストにかかった時間を取得する

やりたいこと curlコマンドを使って、APIのリクエストにかかった時間のみを表示させたい。 結論 これらの情報は-wオプションで取得することができ、以下のように記述する。 # 全体の処理にかかった時間(秒)を出力する $ curl -XG...
ターミナル操作

【Linux】ファイルの中身をクリアする(ログファイルなど)

やりたいこと ログファイルなどのログを追いやすくするため、ログファイルそのものを削除するのではなく、中身を空っぽにしたい。 今回は例としてnginxのログファイルである/var/log/nginx/access.logで説明する。 結論 以...
Docker

【Docker】初学者のためのDockerfile作成方法

概要 Dockerfileを利用してDockerコンテナを起動させるためには、ざっくり以下の手順を行うことになる。(実際には1-3を繰り返しながらDockerfileを作成していく形になる) Dockerfile作成docker build...
シェルスクリプト

【Linux】sshログアウトしてもコマンドをバックグラウンドで実行する

長時間のバッチ実行をリモートのサーバーで実行し、放置しておきたい場合の手順を解説する。 sshログアウトするとプロセスがkillされてしまう &を利用して単純にバックグラウンドで実行するだけの場合、sshログアウトするとそのプロセスはkil...