引用した仮想avfsディレクトリに切り替えることができないのはなぜですか?

引用した仮想avfsディレクトリに切り替えることができないのはなぜですか?

インストールしましたAVFSアーカイブファイルをディレクトリに透過的にマウントする機能。マウントポイントを作成しました。

mkdir ~/.avfs
avfsd ~/.avfs

そこで私はcd ~/.avfs/some/path/foo.tar.gz#/まともなことができます。

しかし、パスを二重引用符で囲むとcd失敗することがわかりました。

~ $ cd ~/.avfs/usr/local/bin/
~/.avfs/usr/local/bin $ cd "~/.avfs/usr/local/bin/"
bash: cd: ~/.avfs/usr/local/bin/: No such file or directory

引用符がなぜ重要なのですか?~/.avfs私は引用符がシェル以外の場所に表示されることを望んでいませんが、これは引用が原因bashで発生した場合にのみ発生するようです。

私はbash4.3.48(1)リリースを使用しています。avfsdバージョン情報レポート:

FUSE library version: 2.9.4
fusermount version: 2.9.4
using FUSE kernel interface version 7.19

ベストアンサー1

パスを二重引用符で囲むと、〜はbashによって拡張されません。通常、プログラムは〜がホームディレクトリを表すことを知りません!

Bashで次の2つのコマンドを試すことでこれを確認できます。

# echo ~/test
/home/rabban/test
# echo "~/test"
~/test

おすすめ記事