Command line 有没有办法从文本文件中删除特殊字符?

Command line 有没有办法从文本文件中删除特殊字符?,command-line,text-analysis,Command Line,Text Analysis,我试图从命令行中进行一些基本的文本分析,但每当我尝试运行命令时,我都会得到以下结果:tr:invalize byte sequence。我已经将问题缩小到文本中的特殊字符(')、ˆ、(),等等)。我可以做些什么来从文本中删除这些特殊字符吗?我可以使用命令行吗?或者我必须运行脚本吗?我不知道您试图如何处理文本,但显然您正在尝试运行tr,这会给您错误消息tr:非法字节序列。当其输入不是对应于有效UTF-8编码的字节序列(并非所有字节序列都对应于一系列Unicode字符的UTF-8编码)时,就会发生这

我试图从命令行中进行一些基本的文本分析,但每当我尝试运行命令时,我都会得到以下结果:tr:invalize byte sequence。我已经将问题缩小到文本中的特殊字符(')、ˆ、(),等等)。我可以做些什么来从文本中删除这些特殊字符吗?我可以使用命令行吗?或者我必须运行脚本吗?

我不知道您试图如何处理文本,但显然您正在尝试运行
tr
,这会给您错误消息
tr:非法字节序列
。当其输入不是对应于有效UTF-8编码的字节序列(并非所有字节序列都对应于一系列Unicode字符的UTF-8编码)时,就会发生这种情况

我不知道您试图处理哪种类型的文件,但在MacOS X环境中,
file-I
命令可能会让您了解实际存在的编码

如果只是重新编码文件的问题,那么
iconv
是一个有用的程序。您可以通过使用
iconv-f-t utf8
(其中,
是原始文件的编码,请运行
iconv-l
,以获取可用的编码列表)


或者,如果您真的想删除文件中的特殊字符(如您在问题标题中所述),您可以使用
iconv-f-t ascii//translatit
。在最后一种情况下,“特殊字符”将近似为普通ASCII字符。

请参见,我认为您的文件的编码错误。你在什么操作系统上?例如,请参阅。感谢您的回复!我用的是macOS Sierra。我会给你提供的链接看一看。因此,如果你真的想摆脱文件中的非ascii,也许你正在寻找的是
iconv-f utf8-t ascii//translatit
。或者更确切地说是用其他东西代替utf8,这取决于文件中的内容。请参阅。您可以使用
file-I
猜测文件的编码,请参阅。