位置: 编程技术 - 正文

Linux查找处理文件名后包含空格的文件(两种方法)(linux查找文件语句)

编辑:rootadmin

推荐整理分享Linux查找处理文件名后包含空格的文件(两种方法)(linux查找文件语句),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:linux文档内查找,linux文件内查找,linux文件内查找内容,linux的查找文件,linux 文件中查找内容,linux 文件中查找,linux 文件中查找内容,linux内容查找,内容如对您有帮助,希望把文章链接给更多的朋友!

当Linux下文件名中出现空格这类特殊情况话,如何查找或确认那些文件名后有空格呢? 又怎么批量替换处理掉这些空格呢?

方法1:

输入文件名后使用Tab键,如果使用Tab键后面出现 这样的可见字符,那么该文件名包含空格。当然,这个方法弊端很大,例如,效率低下,不能批量查找,只有当你怀疑某个文件名后有空格,这个方法才比较凑效。另外,不能查找文件中间包含空格的文件名。如下测试所示:

方法2:

使用find命令查找文件名中包含空格的文件。

那么如何将这些空格替换掉呢? 下面脚本可以替换文件中间的空格,用下划线替换空格,但是只能替换文件中间的空格,并不能替换文件名后面的空格。如下测试所示:

上面脚本只能将文件名中间有空格的替换为下划线。那么如何解决文件名后有空格的情况呢? 可以用其它shell脚本实现,如下所示:

Linux查找处理文件名后包含空格的文件(两种方法)(linux查找文件语句)

如上所示,虽然文件名中间的空格被替换为了下划线,但是后面的空格没有替换为下划线,而是将那些空格直接截断了。Why?下面使用sed命令也是如此

其实,这个是因为读取文件名是$file 与"$file"是不同的,$file不会识别文件名后面的空格,而"$file"才会失败文件名后面的空格。所以上面脚本其实只是取巧而已。

所以,正确的替换空格的命令应该为如下:

方案1:

方案2:

但是对于文件名中间包含空格的情况,上面两个脚本都无法完美解决。如下所示:

当然对于这两种特殊情况,上面脚本都不能一起处理,如上所示,后面的空格会被替换成了下划线。这反而不是我们想要的,反而最上面的那两种脚本,可以误打误撞的解决这两种问题。当然让前提是你得知其然知其所以然!

shell编程跨服务器备份文件 本文实例为大家分享了shell跨服务器备份文件的具体代码,供大家参考,具体内容如下需求:查询某个文件夹下的所有文件,将文件修改时间小于当前时

通过Spring Shell 开发 Java 命令行应用 提到Java,大家都会想到Java在服务器端应用开发中的使用。实际上,Java在命令行应用的开发中也有一席之地。在很多情况下,相对于图形用户界面来说

shell中的source命令的巧妙用法 首先,通常用于重新执行刚修改的初始化文件,使之立即生效,而不必注销并重新登录。例如,当我们修改了/etc/profile文件,并想让它立刻生效,而不

本文链接地址:https://www.jiuchutong.com/biancheng/368668.html 转载请保留说明!

上一篇:浅谈CI脚本异常退出问题定位(引发脚本异常)

下一篇:shell编程跨服务器备份文件(linux跨服务器调用shell脚本)

免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

鄂ICP备2023003026号

网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

友情链接: 武汉网站建设 电脑维修 湖南楚通运网络