はじまりは自己紹介から
はじめまして!
Linuxが全く分からない、あおげばにゃんこです。
今回はLinuxを勉強して少し開発までのフローが楽になったので記事にしてみました。
あまり力を入れずに手短に紹介します。
シェル関数を使わない人生
これまで、開発をする際は毎回以下のようなコマンドを打って環境を整えていました
$ cd ~/parent/child
$ docker compose up -d
$ docker ps
$ docker attach $CONTAINERID
思わずため息が出るような長さですよね?
特に、docker ps
なんて docker compose up -d
したら絶対つかうんだからセットでやってくれよと思ってしまいますよね?
シェル関数を使う人生
さっきの長々としたコマンドは忘れてこれからは以下のように打つだけでいいんです!
$ child
$ dcs
$ da $CONTAINERID
いかがですか?
こんだけ短くなるともう元には戻れないでしょう。
どうやって設定するの?
macユーザーであればターミナルを開くとおそらくzshだと思うので
$ vi ~/.zshrc
を実行してzshrcファイルを開くと
こんな感じのvimエディタが開きますのでこちらに書き込んでいきます。
画質悪いですが気にしないでね🫶
export~が書いてありますが、私が以前設定したものです。
何も設定しないと多分何も書いてない
キーボードの[i]を押してinsertモードにします
その後
child() {
cd ~/parent/child
}
dcs() {
docker compose up -d
echo '-----------------------------------'
docker ps
}
ds() {
docker ps
}
da() {
docker attach "$1"
}
上を丸っとコピペします。
[esc]ボタンを押して[:wq]と打ち込み保存します
最後に
$ source ~/.zshrc
を実行します。
すると
$ child
$ dcs
$ da $CONTAINERID
これだけのコマンドで実行できるようになります。
最後に
簡単に自分が現在設定しているコマンドを紹介します
# zshコマンド
vz() {
vi ~/.zshrc
}
sr() {
source ~/.zshrc
}
# git コマンド
gb() {
git branch
}
ch() {
git checkout "$1"
}
cb() {
git checkout -b "$1"
}
# docker コマンド
da() {
docker attach "$1"
}
dce() {
docker compose exec "$1" bash
}
dcs() {
docker compose up -d
echo '-----------------------------------'
docker ps
}
dcd() {
docker compose down
}
ds() {
docker ps
}
# cd コマンド(よく使うファイルをこれに設定しています)
item() {
cd ~/article/item
}
child() {
cd ~/parent/child
}
お願い
皆さんの便利コマンドの設定もよければ教えてください!
長々と記事にお付き合いありがとうございました😊
余談
今回設定したcdコマンドですが、シンボリックリンクでいいのでは?と最初は思ったのですが、その場合だとgit情報が引き継がれないらしく断念しました。
あと、書籍で勉強したいたのですが、「シェルとターミナルを一緒にしている奴は素人だ!」と書かれていたので気をつけていきたいです。