カテゴリ: Linuxコマンド集 更新日: 2026/05/19

realpath -qオプションの使い方とは?初心者にもわかる静かなパス変換コマンド

realpath -qオプション|エラーメッセージを出さない静かな実行
realpath -qオプション|エラーメッセージを出さない静かな実行

先生と生徒の会話形式で理解しよう

生徒

「Linuxで存在しないファイルのパスをrealpathで調べたら、エラーが出てビックリしました…」

先生

「それはrealpathが、デフォルトでは存在しないファイルを指定するとエラーメッセージを出すからですね。」

生徒

「できれば静かに動いてほしいです…。エラー表示を消す方法はありますか?」

先生

「その場合は-qオプションを使えば大丈夫です。静かに動作して、エラーを出さないようにできますよ。」

1. realpathコマンドとは?

1. realpathコマンドとは?
1. realpathコマンドとは?

realpathコマンドは、Linuxでファイルやディレクトリの絶対パスを表示するための便利なコマンドです。

たとえば、相対パスで指定されたファイルを、システムの中で一意に特定できる形で表示するのに使われます。


realpath ./sample.txt
/home/user/Documents/sample.txt

このように、./sample.txtという相対パスを、/home/user/Documents/sample.txtという絶対パスに変換してくれます。

2. -qオプションとは?

2. -qオプションとは?
2. -qオプションとは?

-q--quietの省略形で、realpathコマンドを静かに実行するためのオプションです。

指定したファイルが存在しなかった場合でも、エラーメッセージを表示せず、標準エラー出力を抑えて実行できます。

つまり、「エラーは出さずに黙って失敗してほしい」ときに使います。

3. 通常のrealpathとの違い

3. 通常のrealpathとの違い
3. 通常のrealpathとの違い

存在しないファイルを指定すると、通常のrealpathは次のようなエラーを出します。


realpath notfound.txt
realpath: notfound.txt: No such file or directory

このように、標準エラー出力に「そんなファイルないよ」と怒られてしまいます。

4. -qオプションを使った例

4. -qオプションを使った例
4. -qオプションを使った例

-qを使うと、エラー表示を一切せずに静かに失敗します。


realpath -q notfound.txt

何も表示されないだけで、裏側では「ファイルがない」と判断され、何も出力しない状態になります。

5. シェルスクリプトでの利用例

5. シェルスクリプトでの利用例
5. シェルスクリプトでの利用例

-qは、シェルスクリプトやバッチ処理でとても役立ちます。

たとえば、ユーザーが入力したパスが存在するかどうかチェックする時に、余計なエラーを出さずに処理できます。


PATH_RESULT=$(realpath -q "$1")
if [ -n "$PATH_RESULT" ]; then
  echo "ファイルが見つかりました:$PATH_RESULT"
else
  echo "ファイルが見つかりませんでした"
fi

このように、realpath -qで得た結果が空かどうかを判定することで、ユーザーにわかりやすく対応できます。

6. 他のrealpathオプションと組み合わせて使う

6. 他のrealpathオプションと組み合わせて使う
6. 他のrealpathオプションと組み合わせて使う

-qは、他のオプションと組み合わせても便利です。たとえば、--stripと一緒に使えば、エラーを出さずにパスを正規化できます。


realpath -q --strip ./../test/missing.txt

このように、パスが存在していなくても、静かに正規化して処理できます。

7. スクリプトにおける「静かな実行」が重要な理由

7. スクリプトにおける「静かな実行」が重要な理由
7. スクリプトにおける「静かな実行」が重要な理由

たくさんのファイルを一括で処理するスクリプトでは、1つでもファイルが見つからないと大量のエラーが出て、ログが読みづらくなります。

また、自動バックアップやファイルチェック処理などで、存在しないファイルがあっても無視したい場合には、-qをつけて静かに処理を続行させるのがとても効果的です。

8. 似たコマンドとの違い

8. 似たコマンドとの違い
8. 似たコマンドとの違い

readlinkコマンドもファイルのパスを表示するコマンドですが、存在しないファイルを指定すると何も出力せず、realpathのようなエラーメッセージは出しません。

ただし、readlinkは相対パスをそのまま返すため、絶対パスを得たいときはrealpathの方が便利です。

9. -qオプションを使う際の注意点

9. -qオプションを使う際の注意点
9. -qオプションを使う際の注意点
  • 失敗しても出力されないため、コマンドが成功したかは戻り値や出力の有無で判断する必要があります
  • デバッグ時は-qを外して、どこで失敗しているか確認しましょう
  • ログをとる場合は、-qで静かにした上で、必要なメッセージをスクリプト内で出力する方法がおすすめです
関連記事:
カテゴリの一覧へ
新着記事
New1
テキスト・データ処理
patch -Rオプションの使い方を完全ガイド!初心者でもわかるLinuxでパッチを元に戻す方法
New2
テキスト・データ処理
less -Xオプションの使い方を完全ガイド!終了後も画面内容を残す方法
New3
ファイル・ディレクトリ操作
lsコマンドの-lオプションでファイルの詳細情報を一覧表示しよう!初心者でもわかる使い方と意味を徹底解説
New4
ディスクとファイルシステム管理
dfコマンドの使い方を完全ガイド!初心者でもわかるLinuxのディスク使用量確認方法
人気記事
No.1
Java&Spring記事人気No1
テキスト・データ処理
catコマンドとは?Linuxでファイル内容を表示・連結する基本
No.2
Java&Spring記事人気No2
ファイル・ディレクトリ操作
cd ~ の使い方を完全解説!ホームディレクトリへの移動方法と初心者向けLinuxコマンド入門
No.3
Java&Spring記事人気No3
ファイル・ディレクトリ操作
pwdコマンドとは?初心者でもわかる現在の作業ディレクトリの確認方法を解説!
No.4
Java&Spring記事人気No4
ファイル・ディレクトリ操作
lsコマンドとは?Linuxでファイルやディレクトリを一覧表示する基本を初心者向けに解説