Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
UNIX:同一路径上有两个同名目录?_Unix_Path_Directory - Fatal编程技术网

UNIX:同一路径上有两个同名目录?

UNIX:同一路径上有两个同名目录?,unix,path,directory,Unix,Path,Directory,当我在一个unix系统中运行时,我发现在同一路径上列出了五个、两个同名的目录,当我执行ls-Dl 这就是我的观点,为什么我说五个,两个同名的目录 //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 roo

当我在一个unix系统中运行时,我发现在同一路径上列出了五个、两个同名的目录,当我执行
ls-Dl

这就是我的观点,为什么我说五个,两个同名的目录

//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
时,这里列出的目录使用了不同的索引节点。甚至连象征性的联系都没有


请向我解释一下???

在每一对中,一个目录名可能包含一个无法打印的字符。尝试使用mv将它们移动到唯一的文件名。一个您不应该能够完全命名的名称,然后您可以使用通配符指定它


您只需键入文件名就可以重命名一个文件,这样您就可以临时用“mv”重命名它。另一个,您可能想要去掉,将是您需要通过通配符指定的。试试看。

使用
ls-b
,如果您发现文件夹或文件后面附加了任何“\”,那应该是空格。

您应该使用所有这些命令来检查文件名中的各种字符(包括隐藏字符):

printf "[%s]\n" *

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

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

最后一个文件还将转储八进制和ascii格式的每个字符。

您检查过文件系统了吗?要了解cd的行为,您可以插入cd并检查的索引节点号。看看你的结局。如果你
ls-B
?这将打印不可打印的字符7,如果我进入其中一个目录,找出目录的inode,知道我在哪个目录中,仍然没有第二个目录的内容@user2859193B在此系统上不是有效选项@TomasCamin@user2922452选中
manls
应该有一个选项来打印非可打印内容。也许
-b
?即使我写了“mv usr xyz”,我怎么知道系统正在选择哪个usr@谢谢。在我的例子中,最后一个命令允许我看到两个目录具有相同的名称,但使用不同的大小写(例如“ABc”和“ABc”),即使
ls
将它们显示为相同的名称:“ABc”