继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Linux下无法删除文件名带有 \ 或 / 的文件 使用单引号解决

维生素P
关注TA
已关注
手记 42
粉丝 8342
获赞 253

问题

  • 当一个文件有特殊字符或者\以及/的时候,是无法直接通过rm命令删除的
sudo rm -rf \jssdk\access_token.php  命令无效

  • 想改名的话,用mv命令也不行,根据报错可以发现,系统执行的时候会把\替换变成空,因此找不到对应文件。

  • 考虑到可能需要字符转义,在\前面单独加' 仍然不行。说明转义的方式还要改一下,不应该只用单引号对一个字符处理。

mv ./\jssdk\access_token.php ./a.php  命令无效
mv: cannot stat './jssdkaccess_token.php':
No such file or directory


mv '\jssdk '\access_token.php a.php 命令无效
mv : cannot stat '\jssdk access_token.php':No such file or directory

解决方法

  • 命令里 把文件名用单引号括起来 再执行rm删除命令
sudo rm ./ '\\jssdk\\access_token.php'

或者
sudo rm '\\jssdk\\access_token.php'
  • 注意删除需要权限

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP