1. ホームディレクトリを指すショートカット
~は シェル(bash など)によって展開されて、現在のユーザーのホームディレクトリのパスに置き換わります。- たとえばユーザー
aliceのホームが/home/aliceなら、~/Documentsは/home/alice/Documentsと同じ意味になります。
2. 別のユーザーのホーム参照
~bobのように書くと、ユーザーbobのホームディレクトリに展開されます。- ただし、この書き方は、
~moretextのようにユーザー名として解釈できない場合には展開されず、そのまま文字列扱いになります。
3. 環境変数 $HOME と同義
~は$HOMEを簡略化した表現で、同様にホームディレクトリを指します。cd ~ cd $HOMEどちらも同じ効果です。
補足:実用上の注意点
- 引用符(”
"や')で囲むと、~は展開されず、文字として扱われることがあります。一部のスクリプトでは$HOMEを使った方が安全です。 - ユーザー名付きの
~bob/dirは、そのユーザーがシステムに存在しない場合は展開されずそのまま残ります。
まとめ
| 表記 | 解釈・意味 |
|---|---|
~ | 現在ログイン中ユーザーのホームディレクトリ ($HOME) |
~/path | ホームディレクトリからの相対パス |
~username/dir | 指定したユーザーのホームディレクトリ |
"$HOME" | ~ と同じだが引用による展開の違いあり |


コメント