おれさまラボ

インターネット技術を中心に、実際に手を動かして理解を深めるブログ。

Bash:readlink コマンドで引数で指定したパスの絶対パスを取得する

readlinkというコマンドを見かけたので、メモ。もともとは、シンボリックリンクのリンク先を確認できるコマンドらしい。

構文

readlink -f <ファイルパス>

実行結果

[root@7545c727c36b log]# pwd
/var/log
[root@7545c727c36b log]# readlink -f .
/var/log
[root@7545c727c36b log]# readlink -f ../../etc/passwd
/etc/passwd

使い所はいまいちわかってないのだが、シンボリックリンクがうまく機能していなかった場合には1を返すようなので、$?で実行結果を判定し、シンボリックリンクが機能しているかいないかの確認に使えるかもしれない。

参考

シェルスクリプトでの絶対パス取得 - Qiita

readlink コマンド | コマンドの使い方(Linux) | hydroculのメモ