シェルスクリプトを使用してファイルから省略記号(...)を削除するのに役立ちます。

シェルスクリプトを使用してファイルから省略記号(...)を削除するのに役立ちます。

シェルスクリプトを使用してファイルから省略記号()を削除するのに役立ちます。私はこのコマンドをさまざまな形で試しましたが、sedUnixシステムで実行しても役に立ちません。

次のコマンドを使用しましたが、Unixサーバーで実行しても役に立ちません。

sed 's/…//g' $x >> $x.tmp
sed 's/\.\.\.//g' $x >> $x.tmp
awk '{gsub(/\.\.\./,"", $0); print}' "Input.TXT" > Output.txt
  • $xファイル名だけです。

  • 省略記号のANSI 16進値は0x85Unicodeです。 16進値はU+2026Unicodeです。数字は次のとおりです。8230

  • 私はsedコマンドを試しました\u2026

    sed 's/\u2026//g' $x >> $x.tmp
    

    しかし、それも役に立ちません。

  • 入力例:

    …ABC
    …DEF
    …123
    …456
    
  • 例外出力:

    ABC
    DEF
    123
    456
    

これは、楕円(3つの点など)が正しく読み取られないUnixサーバーで発生する問題です。viUnix端末で生のファイルを見ると、下に示すように楕円は灰色で表示されますが、<85>他のテキストは通常​​黒いテキストで表示されます。

<85>ABC
<85>DEF
<85>123
<85>456

ベストアンサー1

これが正解かどうかはわかりませんが、試してみる価値があります。sedで試してみたと言ったのですが、表示はされますが実際にはでない場合は見てvim再び文字です0x85。これを試してみてください。動作しますか? :

sed 's/'$(printf "\x85")'//g' $x >> $x.tmp

おすすめ記事