Linux Shell:删除名称包含空格和特殊字符的文件 | 您所在的位置:网站首页 › linux文件名空格 › Linux Shell:删除名称包含空格和特殊字符的文件 |
Linux Shell:删除名称包含空格和特殊字符的文件 嘻嘻发布于2020-05-20 6,794浏览 文章目录 1 问题与解决方法1.1 提示1:将文件名放在引号中1.2 提示2:尝试反斜杠1.3 提示3:在文件名开头尝试./。1.4 提示4:尝试在文件名开头输入-1.5 提示5:按索引节点编号删除文件在Linux下面有时候会碰到文件名中含有特殊的字符,这种情况下一般的删除方式是无效的,需要加单引号、\等才能删除文件。 Linux下面文件名中的特殊字符: –—;&$?*White spaces, backslashes and more.在这个快速提示中,我将向您展示如何删除或复制Linux上名称包含奇怪字符的文件。 问题与解决方法您的默认bash shell将其中许多特殊字符(也称为元字符)视为命令。如果尝试删除或移动/复制此类文件,则可能会导致错误。在此示例中,我试图删除名为“> file”的文件: $ rm >file 样本输出: rm: missing operand Try `rm --help' for more information.提示1:将文件名放在引号中需要以下命令来复制或删除名称中带有空格的文件,例如: $ cp "my resume.doc" /secure/location/ $ rm "my resume.doc"引号还可以防止shell解释许多特殊字符,例如: $ rm -v ">file" removed `>file'双引号会保留所有包含的字符的值,但美元符号,反引号和反斜杠除外。您也可以尝试使用单引号,如下所示: $ rm -v 'a long file name here' $ cp 'my mp3 file.mp3' /backup/disk/提示2:尝试反斜杠您始终可以在文件名中的特殊字符之前插入反斜杠(): $ cp "my resume.doc" /secure/location/ $ rm "*file提示3:在文件名开头尝试./。删除文件’-file’的语法如下: $ rm -v ./-file removed `./-file'文件名开头的./强制rm不解释–作为rm命令的选项。 提示4:尝试在文件名开头输入-A —表示选项结束,并通过Shell禁用进一步的选项处理。-之后的所有参数均被视为文件名和参数。–的参数等效于–。语法为: $ rm -v -- -file $ rm -v -- --file $ rm -v -- "@#$%^&file" $ rmdir -v -- "--dirnameHere"提示5:按索引节点编号删除文件ls的-i选项显示每个文件的索引号(索引节点): ls -li 如果文件的inode号为4063242,请使用以下find命令删除该文件: $ find . -inum 4063242 -delete要么 $ find . -inum 4063242 -exec rm -i {} ;有关本技巧中的find,rm和bash命令的更多信息和选项,请在Linux提示符下键入以下命令以阅读手册页: $ man find $ man rm $ man bash 5.001 每日一句话科技资讯 | 20200521 每日一句话科技资讯 | 20200520标签: shell 工具 开发 程序猿 编程你可能还喜欢这些文章 既然有了HTTP,为什么还要RPC? 每日一句话科技资讯 | 20200623 2023最新国外收费短信接码平台大全 4种在命令行中获取电脑IP的方法 Golang如何实现php中的array_column函数? IPKings一款优秀的HTTP/Socks5代理服务-最低1.49$每月 如何告诉git本地分支跟踪远程分支? shell bash中如何去掉字符串中空格? 关于我嘻嘻嘻嘻IT: 笔者是一个工作七八年的程序猿老鸟,从事涉及的技术栈主要包括PHP、Linux、Devops等,喜欢研究新技术,尝试新技术,提升技术自动化和开发效率,致力于write less,do more! 技术每年都会层出不穷,领域划分的越来越细,不可能学习所有的东西,保持对技术的好奇心,理解技术中核心思想,做一个有深度,有思想的开发! |
CopyRight 2018-2019 实验室设备网 版权所有 |