【shell】删除脚本/文件的特殊字符|不可见字符|异常字符

目录

删除文件的不可见字符

删除 名字含特殊字符的 文件

删除文件的不可见字符

使用tr命令可以从字符串中仅获取’可打印'(可见)的字符.

如:从file1 中获取可见字符

tr -cd "[:print:]\n" < file1

将脚本中的不可见字符去掉可以用下面的命令:

tr -cd “[:print:]\n” < file1 >> file1_new

file1_new 就是去除不可见字符后的脚本

原文:https://www.it1352.com/1563451.html

下面的指令把filename改成脚本的名字再运行即可:

TMPNAME=filename&&mv ${TMPNAME} ${TMPNAME}_bak && tr -cd “[:print:]\n” < ${TMPNAME}_bak >> ${TMPNAME}&&rm -f ${TMPNAME}_bak&&chmod 777 ${TMPNAME}

在vi命令模式下:set list可以将不可看见的特殊字符打印出来

删除 名字含特殊字符的 文件

  可以根据文件节点来删除,具体操作参考如下:

  1. ls -i 列出当前目录下所有文件的节点ID和文件名

  2. rm -rf “`find -inum ${NODE_ID}`”, ${NODE_ID}为你所看到的节点ID,然后烦人的文件就删

    原文作者:bdview
    原文地址: https://blog.csdn.net/weixin_42319496/article/details/121124488
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞