😸
【Linux】意外なcdコマンドの使い方3つ
はじめに
個人的に「こんなことできるの!?」と思ったcdコマンドの使い方を3つ紹介します。
①は知っていたのですが、②と③ははじめて知りました。
環境
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.6 LTS"
$ bash --version
GNU bash, version 5.0.17(1)-release (x86_64-pc-linux-gnu)
①前のディレクトリに戻る
cd -
でひとつ前にいたディレクトリに戻れます。
/tmp$ cd /
/$ cd -
/tmp
/tmp$
②ユーザのホームディレクトリに移動する
cd ~<ユーザ名>
とすることでユーザのホームディレクトリに移動します。
$ cat /etc/passwd | grep cduser
cduser:x:1003:1003::/home/cduser:/bin/bash
$ cd ~cduser
/home/cduser$
③シンボリックリンクで実際のパスへ移動する or しない
こういったシンボリックリンクがあります。
$ ls -l
total 0
lrwxrwxrwx 1 test test 18 8月 4 23:38 symlink -> /tmp/symlink_saki/
cd -P
)
移動する(cd -P
とすることでシンボリックリンクの実際のパスへ移動します。
~/tmp/cd_test$ cd -P symlink
/tmp/symlink_saki$
cd -L
)
移動しない(cd -L
とすることでシンボリックリンクを解決せずにそのままのパスとして処理します
~/tmp/cd_test$ cd -L symlink
~/tmp/cd_test/symlink$
おわりに
「こんなことできるの!?」となって楽しかったです。
特に①は便利なのでぜひ使ってみて下さい。
あとpushd
コマンドとcdの合わせ技も気になっているので、確かめてみたいところ
参考
Discussion