9

UNIX システムを使用しているときに、同じ名前の 2 つのディレクトリが同じパスにリストされているのを見つけました。ls -Dl

ここにビューがあります。同じ名前の 5 つのディレクトリと 2 つのディレクトリと言った理由です.....

//11/# ls -Dl

total 553

drwxrwxr-x  2 root      root          12288 Dec 20  2010 bin

drwxrwxr-x  2 root      root          16384 Sep 28  2010 bin

drwxrwxr-x 11 root      root           4096 Oct 25 06:49 etc

drwxrwxr-x 11 root      root           8192 May 17 07:40 etc

drwxrwxr-x  3 root      root           4096 Sep 28  2010 qnx4

drwxrwxr-x  4 root      root           4096 Jul 26  2010 qnx4

drwxrwxr--  4 root      root           4096 Sep 28  2010 registry

drwxrwxr-x  4 root      root           4096 Aug 31  2008 registry

drwxrwxr-x 16 root      root           4096 Sep 28  2010 usr

drwxrwxr-x 17 root      root           4096 May 27 03:49 usr

これはどのように可能ですか?? それらのいずれかを cd するとどうなりますか?最終的にどのディレクトリに移動しますか??

別の見方もできます。私が行っls -liFたとき、ここにリストされているディレクトリには異なる inode がありました。シンボリックリンクなどではありませんでした.???

これを私に説明してください??

4

3 に答える 3

9

これらすべてのコマンドを使用して、ファイル名に含まれるさまざまな文字 (隠し文字を含む) を確認する必要があります。

printf "[%s]\n" *

printf "%s\n" * | cat -vte

printf "%s\n" * | od -bc

最後のものは、8進数とASCIIで各文字をダンプします。

于 2013-10-26T12:34:30.503 に答える
4

ls -bフォルダーまたはファイルの後に「\」が追加されている場合は、スペースを使用してください。

于 2013-10-26T12:31:09.283 に答える
-1

各ペアで、1 つのディレクトリ名に印刷できない文字が含まれている可能性があります。mv を使用して、両方を一意のファイル名に移動してみてください。完全な名前を付けることはできませんが、ワイルドカードを使用して指定できます。

ファイル名を入力するだけで名前を変更できるはずなので、一時的に「mv」で名前を変更できます。おそらく削除したいもう1つは、ワイルドカードで指定する必要があるものです。それを試してみてください。

于 2013-10-26T08:13:06.043 に答える