目录名称之间是否有任何区别,例如
mydirectory
和
mydirectory/
我注意到ls
在某些目录中执行时会发生这种情况-有些目录名称带有斜杠,而有些则没有。这是有问题的,因为如果我要访问目录中包含的文件,则可能需要在末尾添加斜杠:
vi $mydirectory"/"$myfile
或干脆做
vi $mydirectory$myfile
没有/
它也可能是一个文件。
在某些情况下,它可能是致命的。例如,在使用时mv
:
mv file1 mydirectory
mv file2 mydirectory
mv file3 mydirectory
好的?但是,如果mydirectory
不存在或不是目录,则最终结果是,file1
并且file2
消失了,file3
现在命名为mydirectory
。
mv file1 mydirectory/
mv file2 mydirectory/
mv file3 mydirectory/
如果mydirectory
不存在,您将得到的只是三个错误消息和file1
,file2
并且file3
仍然存在。
因此/
消除了一些歧义。
除此之外,实际上没有任何规则。某些程序的行为可能会有所不同,具体取决于您是否/
在最后提供了。由他们决定如何制作。
在某些情况下,如果使用太多,也会遇到问题/
。例如,在输出中find
保留多余的内容/
,如果您尝试使用简单的字符串比较而不是realpath
诸如此类的东西来查找文件/路径名,则可能会使您失望。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句