シンボリックリンクにアクセスするプログラムは、ユーザーとどう違いますか? (ファイルをシンボリックリンクに置き換えると、どのシナリオが破損しますか?)

シンボリックリンクにアクセスするプログラムは、ユーザーとどう違いますか? (ファイルをシンボリックリンクに置き換えると、どのシナリオが破損しますか?)

私はソフトシンボリックリンクとハードシンボリックリンクが何であるかを理解していると思いますが、プログラムが(私とは異なり、ユーザー)どのようにアクセスできるのかわかりません。

たとえば、~/.bashrcを別の場所にあるシンボリックリンクに置き換えたいとします。私はいつユーザーたとえば、Vimでこのファイルを開くと、実際には//some/path/.bashrc(リンクの種類に関係なく)を編集しています。それはいいですが、プログラムはどうですか?たとえば、~/.bashrc?に追加されたインストーラはありますか?

  1. プログラムは「モード」(シンボリックリンクに従ったり従わない)でファイルを開くことができますか?私の推測はファイルハンドルプログラミング言語では、inodeがコンパイルまたは解釈されるため、少なくともハードリンクの場合は常に従います。

  2. ソフトリンクの場合できるどのモードでも開くと、主要なプログラミング言語ではどのように見えますか?

  3. プログラムがシンボリックリンクに対して「盲目」である場合、 ~/.bashrc を ~/some/path/.bashrc にソフトリンクできると仮定し、ファイルが存在し、同じままである限り、スムーズに動作すると期待するのは安全ですします。元の〜/.bashrcに同じ権限がありますか?それとも何か奇妙なシーンがありますか?できる機能を破壊しますか?

私が読んで

ソフトリンクとハードリンクの違いを説明するその他の回答ですが、シンボリックリンクについてより多くの知識を持っていても、これに関して自信はありません。

ベストアンサー1

おすすめ記事