ファイルが それ自身にシンボリックリンクされている場合、データは存在せず、それにアクセスしようとするとループが発生し、最終的にエラーになります
例
$ ls -l myfile
lrwxrwxrwx 1 sweh sweh 19 Sep 9 22:38 myfile -> /path/to/here/myfile
$ cat myfile
cat: myfile: Too many levels of symbolic links
データがないため、これらのシンボリック リンクを削除してもデータは失われません。 保存するデータがありません。
Too many levels of symbolic links
を取得できない場合 cat
しようとするとエラーになります ファイルの場合、あなたのファイルはそうではありません それ自体へのリンク。
ln
決してしない それ自体へのリンクでファイルを上書きします。次の方法で、それ自体にリンクされたファイルを取得できます:
$ ln -s `pwd`/myfile myfile
$ ls -l myfile
lrwxrwxrwx 1 grochmal users 25 Sep 10 03:41 myfile -> /home/grochmal/tmp/myfile
しかし、データを含むファイルを試してみると:
$ rm -f myfile
$ echo yay > myfile
$ ln -sf `pwd`/myfile myfile
ln: '/home/grochmal/tmp/myfile' and 'myfile' are the same file
ln
一方、別のファイルへのリンクでファイルを上書きします。
それでも、それ自体へのリンクは、データを持っていなかった (またはソフト リンクの作成前に明示的に削除された) ファイルであると確信できます。
(Linux で ln
を使用) coreutils
から 、つまり)