linux下以‘-’开头的文件名,cp、mv、rm、ls等对他都是无效的:
[root@ha131 ~]# ll -plat.py ls:无效选项 -- . 请尝试执行"ls --help"来获取更多信息。 [root@ha131 ~]# cp -plat.py plat.py cp: 正在访问".py": 没有那个文件或目录 [root@ha131 ~]# mv -plat.py plat.py mv:无效选项 -- p 请尝试执行"mv --help"来获取更多信息。 [root@ha131 ~]# rm -plat.py rm:无效选项 -- p 尝试使用"rm ./-plat.py"删除文件"-plat.py"。 请尝试执行"rm --help"来获取更多信息。
那怎么来处理呢,想办法绕过-符号就行了:使用./
[root@ha131 ~]# ls ./-plat.py ./-plat.py [root@ha131 ~]# ll ./-plat.py -rw-r--r-- 1 root root 1426 11月 30 10:23 ./-plat.py [root@ha131 ~]# cp ./-plat.py plat.py [root@ha131 ~]# mv ./-plat.py plat2.py
扩展:对于文件名中带空格
mv ‘ filename’ filename 使用引号引起来;
或者mv \ \ \ filename filename 使用转义字符\;