LoginSignup
1
2

More than 5 years have passed since last update.

mkdir と cd を同時にやるために独自のコマンドを追加した

Last updated at Posted at 2018-08-25

はじめに

ターミナルで、mkdirを実行して空のフォルダを作成したあと、そのフォルダに移動するためcdを実行することがけっこうあると思います。
本稿ではmkdirとcdを同時に行うコマンドを追加する方法について書いていきます。
似たような記事がけっこう見受けられますが、丁寧めに説明したいと思います。

環境

  • macOS High Sierra 10.13.3

方法

.bashrc というファイルを作成して編集、保存することで独自のコマンドを追加します。

  • ターミナルを起動します。
  • ターミナルでvim ~/.bashrcを実行しホームディレクトリに.bashrcファイルを作成します。画像のような画面になると思います。スクリーンショット 2018-08-26 1.30.26.png
  • すでに .bashrcファイルの編集ができる状態です。ここでは"mkcd"という名前のコマンドを追加するため以下のコードを記述してください(任意の名前に変更してもかまいません)。
function mkcd {
  if [ ! -n "$1" ]; then
    echo "Enter a directory name"
  elif [ -d $1 ]; then
    echo "\`$1' already exists"
  else
    mkdir $1 && cd $1
  fi
}
  • 記述したら:wqと打ってEnterを押します(":wq"は編集内容を保存して操作を終了するコマンドです)。
  • macOSのデフォルトでは、ホームディレクトリに.bashrcを作成してもターミナル起動時に読み込むようになっておらず、このままでは追加したコマンドは使えません。自動で読み込ませるために、再びターミナルでvim ~/.bash_profileを実行します。ホームディレクトリに.bash_profileが作成されるので、これまでと同様に以下のコードを記述して保存(:wq)してください。

if [ -f ~/.bashrc ] ; then
. ~/.bashrc
fi
  • これで mkcd というコマンドが追加できました。試しにmkcd testを実行するとtestフォルダが作成&フォルダ先に移動していると思います。スクリーンショット 2018-08-26 1.17.40.png

以上です。

参考

Made a custom terminal command
Is there a shortcut to mkdir foo and immediately cd into it?
ターミナル起動時に.bashrcを読み込むようにする

1
2
0

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
1
2