需要使用 shell scripting/awk/perl 用空格替换固定宽度文件中的重音/变音符号/非 ASCII 字符
我们有一个固定宽度的文件,它在一个固定宽度的文件中有重音/变音符号/非 ASCII 字符。该文件是通过从数据库中提取数据并将其假脱机到文件而生成的。这里的主要问题是当我们查询数据库时,这些重音/变音符号/非 ASCII 字符在数据库客户端控制台上可见。但是当我们将这些数据提取到一个文件并在腻子框中打开文件时,我们无法看到这些字符。
例如,我们在数据库控制台中看到的是 JEANNOýýýýýýL,但在腻子框中我们看到的是 JEANNOL
为了解决这个问题,我尝试了以下方法。
使用 od -An -tu1 命令查找文件中每个字符的 ASCII 值。对于所有这些重音/变音符号/非 ASCII 字符,我将 ASCII 值设为 null,我将其替换为空格的 ASCII 字符。然后我为这些 ASCII 值打印字符。这里的问题是输入记录中的一些真实空格被删除并弄乱了这个固定宽度文件的列结构。
即使在我用空格替换重音字符的 ASCII 值后,我也想为固定宽度文件中的每条记录保持相同的行长。
我可以得到帮助来解决这个问题吗?
谢谢