UTF-8 ファイル内のバイト オーダー マーク (BOM) を検索して削除する方法

Mary-Kate Olsen
リリース: 2024-11-04 10:29:02
オリジナル
476 人が閲覧しました

How to Find and Remove Byte Order Marks (BOM) in UTF-8 Files?

独創的なアプローチ: UTF-8 ファイル内の BOM を見つける

バイト オーダーで装飾された UTF-8 ファイルをディレクトリ内で探す必要性マーク (BOM) はデバッグ目的で発生します。シェル スクリプトは簡単な解決策を提供しますが、読みにくいワンライナーやファイル名の改行の敏感さなどの不完全さに苦戦する可能性があります。

洗練されたソリューション

さらなる解決策を模索洗練されたアプローチとして、次の簡潔なコマンドを検討してください。

find . -type f -exec sed '1s/^\xEF\xBB\xBF//' -i {} \;
ログイン後にコピー

このコマンドは、「find」ユーティリティを利用して、指定されたディレクトリを走査します。次に、タイプ「f」のファイル (通常のファイル) がフィルタリングされます。条件を満たすファイルごとに、「sed」エディタが呼び出され、最初の行で置換が実行されます。文字列 ^xEFxBBxBF は、行の始まりを示す制御シーケンスで始まり、BOM を構成する 3 つの文字 (EF BB BF) に一致します。これを空の文字列に置き換えることで、BOM は事実上消去されます。

注意事項

この操作は破壊的であることをユーザーに警告します。これらの文字を含むバイナリ ファイルは変更されます。意図しない変更を防ぐには、代わりに次のコマンドを使用します。

grep -rl $'\xEF\xBB\xBF' .
ログイン後にコピー

この修正されたコマンドは、'grep のパターン マッチングの使命に忠実です。害を与えることなく、BOM を含むファイルを識別する機能は維持されます。

以上がUTF-8 ファイル内のバイト オーダー マーク (BOM) を検索して削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!