Linux・UNIXのシェルスクリプトで相対パスから絶対パスを取得するなら『readlink』が便利

LinuxやUNIXで利用するシェルスクリプトの中で相対パスから絶対パスを取得するには、『readlink』コマンドがものすごい便利だ。
このコマンド、基本的にはシンボリックリンクの実体を取得するためのコマンドなのだが、「-f」オプションを利用することでファイルのフルパスを取得出来るのだ。

readlink -f 相対PATH

実際に実行した結果がこちら。

test@ubuntu-server:~$ l -la
合計 292
drwxr-xr-x 10 test test   4096  4月  5 10:35 ./
drwxr-xr-x  3 root root   4096  3月 22 10:23 ../
-rw-------  1 test test   3713  4月  5 10:40 .bash_history
-rw-r--r--  1 test test    220  3月 22 10:23 .bash_logout
-rw-r--r--  1 test test   3637  3月 22 10:23 .bashrc
drwx------  2 test test   4096  3月 22 10:52 .cache/
drwxrwxr-x  3 test test   4096  4月  1 21:47 .local/
drwxrwxr-x 79 test test  12288  4月  1 21:54 .npm/
-rw-r--r--  1 test test    675  3月 22 10:23 .profile
drwx------  2 test test   4096  3月 31 07:23 .ssh/
drwxrwxr-x  4 test test   4096  4月  2 01:01 ansize/
drwxrwxr-x  7 test test   4096  4月  1 21:54 blessed-contrib/
drwxrwxr-x  3 test test   4096  4月  2 07:55 mario-shellscript/
-rw-rw-r--  1 test test   9635  4月  2 00:58 miku00.ascii
-rw-r--r--  1 test test 209561  4月  2 00:53 miku00.png
drwxrwxr-x  2 test test   4096  4月  1 21:54 tmp/
-rw-rw-r--  1 test test    366  4月  5 10:38 ttyrecord
-rw-r--r--  1 root root    661  4月  4 19:59 typescript
test@ubuntu-server:~$ pwd
/home/test
test@ubuntu-server:~$ readlink -f miku00.ascii
/home/test/miku00.ascii
test@ubuntu-server:~$