shell scripting/awk/perl を使用して、固定幅ファイル内のアクセント付きの /diacritics/non ASCII 文字をスペースに置き換える必要があります
固定幅ファイルにアクセント付きの /diacritics/non ASCII 文字を含む固定幅ファイルがあります。このファイルは、データベースからデータを抽出し、それをファイルにスプールすることによって生成されます。ここでの主な問題は、データベースにクエリを実行すると、これらのアクセント付きの /diacritics/non ASCII 文字がデータベース クライアント コンソールに表示されることです。しかし、このデータをファイルに抽出し、そのファイルをパテ ボックスで開くと、それらの文字は表示されません。
たとえば、データベース コンソールでは JEANNOýýýýýýýL と表示されますが、パテ ボックスでは JEANNOL と表示されます。
これを修正するために、以下のアプローチを試しました。
od -An -tu1 コマンドを使用して、ファイル内の各文字の ASCII 値を検索しました。これらすべてのアクセント付き/diacritics/非ASCII文字について、ASCII値をnullとして取得しており、これをスペースのASCII文字に置き換えています。次に、これらの ASCII 値の文字を出力しています。ここで問題となるのは、入力レコード内の正規のスペースが削除され、この固定幅ファイルの列構造がめちゃくちゃになることです。
アクセント付き文字の ASCII 値をスペースに置き換えた後でも、固定幅ファイルの各レコードの同じ行の長さを維持したいと考えています。
これを修正するために助けを得ることができますか?
ありがとう