Linuxではファイル(file1)を作成しました。
echo Hello file1 > file1
次に、file1へのシンボリックリンク(file2)を作成しました。
ln -s file1 file2
その後、file1を削除しました。
rm file1
最後に、file2を別の方法で編集しました。
echo Changed file2 > file2
これらすべての手順を実行した後、file1とfile2に「Changed file2」が含まれていることを確認しました。
私が理解したのは、file1を削除した後にシンボリックリンク(file2)が機能しなくなったことです。しかし、私が答えたい興味深い部分は、file2を編集するとfile1が復元されることです(file1が以前に削除されたにもかかわらず)。
貴重な時間をいただきありがとうございます。
ベストアンサー1
file1
プロセスは実際に最初のファイルを復元しません。代わりに、実行時に作成されますecho Changed file2 > file2
。file2
その時点で存在しないファイルへのリンクfile1
。シンボリックリンクは既存のファイルを指す必要はありません。これはシンボリックリンクなので、システムはそれを解析し、コマンド出力echo
にリダイレクトし、file1
ファイルを生成し、file2
指す場所にシンボリックリンクを残しますfile1
。