【Mac】ターミナルの.zshrc(.bashrc)の設定を公開してみる

2月 12, 2022

最近急に冷え込んできましたね。秋なんてなかったんや…。


みなさん、ターミナルあるいはiterm2などは利用しておりますでしょうか。私はインフラエンジニアなのでMacでの作業はよくターミナル上で行っております。


そんな僕はMacの.zshrc(.bashrc)にいろんな設定をしておいてターミナル画面から様々な動作を行えるようにしています。


今回は僕が設定している内容を共有してみようと思います。

コマンド入力補助

ターミナルでコマンドを入力する際に便利な保管機能を紹介します。


.zshrcでの定義は以下のとおりです。

# 補完機能を有効にする
autoload -Uz compinit
compinit -u
if [ -e /usr/local/share/zsh-completions ]; then
  fpath=(/usr/local/share/zsh-completions $fpath)
fi

# 補完で小文字でも大文字にマッチさせる
zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}'

# 補完候補を詰めて表示
setopt list_packed

# 補完候補一覧をカラー表示
autoload colors
zstyle ':completion:*' list-colors ''

# コマンドのスペルを訂正
setopt correct
export PATH="/usr/local/opt/mysql-client/bin:$PATH"

どれも設定しておいて損はない機能ばかりですので、好みに合わせて記載してみてください!

Finderの起動

Finderの起動はショートカットで行うことも可能ですが、ショートカットを忘れてしまったりすると調べる手間もあり面倒です。


なので僕の場合はfinderというコマンドを定義してより直感的に起動できるようにしています。


下記の例ではfinderと入力するとカレントディレクトリをFinderで開くように設定しています。openコマンド+パスでどのディレクトリを開くか定義できますのでこちらもお好みに合わせて設定してください!

alias finder='open .'


Google検索

ターミナルからコマンド一つでGoogle検索できたら便利ですね!


どこでgoogle関数を定義し"google 検索ワード"でターミナルからChromeを起動しgoogle検索できるようにしてみましょう。

google() {
    local url="https://google.co.jp/search?q=${*// /+}"
    local browser="Google Chrome"
    open $url -a $browser
}

こちらの設定は非常に有用ですので、是非設定することをお勧めいたします。変数browser内に他の検索エンジンを指定することもできます。

各アドレスの確認

使用しているMacの現在使用しているグローバルIPアドレス、ローカルIPアドレス、MACアドレスをコマンド一つで調べられるようにしています。

#グローバルIPアドレス
alias gip='curl globalip.me'
#ローカルIPアドレス
alias lip='ifconfig | grep 192 | awk '\''/inet/ { print $2 }'\'''
#MACアドレス
alias maddr='ifconfig en0 | awk '\''/ether/ { print $2 }'\'''

上記の例ではgipと入力すればグローバルIPアドレスが表示されます。また、lipと入力すればローカルIPアドレスが、maddrと入力するとMACアドレスが表示されるように設定しています。

ファイアーウォールの設定やVPNの設定など必要となる場面は時々ありますので設定しておくと便利です。

ターミナルの背景色を変更

こちらは以前記事にしたターミナルの背景色を変更するシェルスクリプトの再紹介となります。(記事はこちら)


こちらも.zshrcにてaliasを使用してコマンド化しておくと非常に便利ですので是非使用してみてください。

alias chgbc='/スクリプトを配置しているパス/スクリプト名'

例えば以下のように使用することでターミナルの背景色を赤色に変更できます。

chbgc -r

SSH接続しているターミナルとそうでないターミナルの区別に利用するなどして、思わぬ事故を防ぐこともできますよ!

天気を確認

最後は番外編としてターミナルから天気を確認できるようにしてみます。


.zshrcにて下記のように設定してみてください。

alias wttr='() { curl -H "Accept-Language: ${LANG%_*}" wttr.in/"${1:-Kyoto}" }'

これで天気を確認するコマンドwttrの完成です。


在宅勤務中に干している洗濯物に気づいた時なんかによく利用しています(笑)

さいごに

今回は僕のMacにて設定している.zshrcの内容を公開してみました。


仕事中は基本的にiterm2を開いているので、どんどん便利コマンドを作成して画面のあちこちをクリックしないで住むようにしたいですね!


もっといろんな設定を試してみて、また続編の記事なんかも作成してみようかな。


最後まで読んでいただきありがとうございました。


↓オススメ教材

その他

Posted by CY