LoginSignup
2

More than 5 years have passed since last update.

※この記事はこちらのアドベントカレンダーに参加しています。
https://qiita.com/advent-calendar/2018/yumemi01_one-liner

というわけで、やっていきます。
ちなみにちゃんとbashを使い始めたのは大体3か月ぐらい前くらいです。それまでは完全なwindowsマンでしたので、低レベルな内容になるかと思いますがご容赦ください。

Docker関連

僕は普段の業務でdocker-compose upしてから、docker psしてコンテナIDを調べてからコンテナに入るということをやっているので下記のaliasを張っています。

alias dcp='docker-compose' 
alias dop='docker ps'


function dce() {
  docker exec -it $1 bash 
}

毎回dockerのコンテナID入力するとか面倒じゃない?と思ったかたもいると思いますが、じつはコンテナIDって全部入力しなくてもいいんですよ。コンテナを識別できる文字数(2文字か3文字程度)が入力されていれば普通にログインできます。
下記が例。

$ docker-compose up
# コンテナが起動する

$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
e7ec42e8cef5        node_web          "node"                   13 seconds ago      Up 4 seconds        0.0.0.0:8080->3000/tcp   node
78303277dc02        mysql:5.7           "docker-entrypoint.s…"   16 seconds ago      Up 11 seconds       0.0.0.0:3306->3306/tcp   db

$ docker exec -it e7 bash
# これでコンテナにログインできる

なので、この例を最初に紹介したエイリアスを張った場合には、下記のようになります。

$ dcp up
$ dop
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                    NAMES
e7ec42e8cef5        node_web          "node"                   13 seconds ago      Up 4 seconds        0.0.0.0:8080->3000/tcp   node
78303277dc02        mysql:5.7           "docker-entrypoint.s…"   16 seconds ago      Up 11 seconds       0.0.0.0:3306->3306/tcp   db
$ dce e7

コンテナを複数立ち上げて頻繁に入りなおす場合なんかはこうしておくと便利です。
あと、そもそもコンテナIDじゃなくてimageの名前で定義しておけばいいんじゃない?って人もいると思います。それでもいいと思います。
ただ、僕はいまからどのコンテナに入るかを明確に意識するために毎回IDを見てから入るようにしています。これは個人の感覚の問題なので好きなやりかたでok。

あと当たり前の話ではありますが、$ docker exec -it $1 bash というコマンドはbashがインストールされてるイメージじゃないと怒られます。alpineベースのコンテナだとデフォルトではbashが入っていないのでインストールさせるかコマンドの末尾を bin/sh もしくは ashに変更しましょう。

git関連

alias glo='git log --oneline' 

alias gb='git branch' 
alias gba='git branch -a' 

function gcb() {
  git checkout -b $1 
}

gitは敢えてしぼっています。
pushやcommitもよく使いますが、aliasで短くした結果コマンド間違ったみたいなことになると嫌なので。。。

とりあえずこんなとこですかね。
来年はもうちょっとターミナルを活用していきたいなーと思っています。
皆様、良いお年を~

追記

tree='pwd;find . | sort | sed '\''1d;s/^\.//;s/\/\([^/]*\)$/|--\1/;s/\/[^/|]*/| /g'\'''

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2