首页 > 系统服务 > 详细

linux下一个有意思的问题(文件名以短划线或空格开头)

时间:2015-07-15 18:30:46      阅读:475      评论:0      收藏:0      [点我收藏+]

linux下一个有意思的问题(文件名以短划线开头)

这本是无意中的一个发现。

在linux下,文件名中含有 - 是没有问题,但是如果文件名是以-作为第一个字符的,那么就比较麻烦了。

 

问题演示

看这里,以短划线开头的文件名似乎对mv cp  rm   等操作免疫了。利用这个特性可以制造出一些比较麻烦的文件或者文件夹来。

o@o-pc:~$ ls
-python.md
o@o-pc:~$ mv -python.md 5-python.md
mv:无效选项 -- p
Try mv --help for more information.
o@o-pc:~$ mv "-python.md" 5-python.md
mv:无效选项 -- p
Try mv --help for more information.

 

解决办法

这个其实很好解决的嘛,问题的原因是因为其将 -当做了一个选项参数的标识,而导致找不到对应的文件。解决的办法就是想办法把这个-给隐藏起来咯。

o@o-pc:~$ mv ./-python.md 5-pythom.md

 

文件名以空格开头

这里不打算说太多,原理是一样的。如果文件名以空格开头,必须知道空格的数目。

将要操作的文件名以单引号  ‘‘ 包裹起来

例如有一个文件名为 ” A" 注意,该文件名为三个空格加一个字母A。如果对其重命名,使用以下命令

mv `   A   新文件名

 

linux下一个有意思的问题(文件名以短划线或空格开头)

原文:http://www.cnblogs.com/oloroso/p/4648711.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!