ls会丢失文件吗?

在UNIX/Linux下,ls是一个简单的基本命令,它可以显示某个目录下的文件列表,如果不指定特定目录的话,它将显示当前路径下的文件列表。
那么,ls是可靠的吗?
“不,当然不是,有些文件它不会列举出来。”你可能会这样说。
不错,在SHELL命令行上简单的打ls,有一些文件我们是看不到的---那就是隐藏文件。
和Windows不同,UNIX系统里面的文件不能够设置隐藏/非隐藏属性。但是,UNIX下也是有隐藏文件的,不过,它是通过文件名称来达到这个目的的。
在UNIX/Linux下,如果文件的名称第一个字符是“.“的话,它就是所谓的隐藏文件了,通过简单的ls我们是看不到它的。(不然,它的隐藏属性有何意义

没错,你说的不错,可是ls -a就能够显示当前路径下所有的文件吗?
???当然了,这还用说吗!?
嗯,不错!那,ls -a *呢?
???一样的吧!(没有什么不同吧!?)

呵呵,如果你真的想这样回答的话,最好先好好的考虑一下UNIX/Linux下对于*(通配符)的处理。

我们在SHELL命令行上敲入的命令为什么能够执行?
那是因为有SHELL在啊,它负责分析、查找、执行、返回我们输入的信息。
没错,SHELL的功能是很强大的,它是我们和操作系统之间的桥梁,我们是通过它来和操作系统打交道的。
我们知道,SHELL是一个命令解释器,我们输入的信息它不是原原本本的交给操作系统的,而是进行了一些处理。
对于符号“*”,SHELL往往将其翻译为当前目录下的所有文件(隐藏文件好像需要除外),任何SHELL才返回你想要的东西。
问题恰恰就在这里,因为再聪明的人也有糊涂的时候 ^_^

如果,如果我有一个名称为"-l"的文件,结果会如何呢?
???谁这么无聊啊,弄一个"-l"做文件名?
哈,假设一下嘛,不要那么认真。

没错的,如果真的有这样的文件的话,ls不仅会漏掉文件,而且会返回我们并不想要的显示模式。

...(稍后补充)

我们知道,ls可能会丢失文件,而这都是通配符惹的祸 ^_^

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值