Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mencari dan Mengalih Keluar Fail UTF-8 dengan BOM dengan Cekap?

Bagaimana untuk Mencari dan Mengalih Keluar Fail UTF-8 dengan BOM dengan Cekap?

Barbara Streisand
Barbara Streisandasal
2024-11-06 11:44:02903semak imbas

How to Find and Remove UTF-8 Files with BOMs Efficiently?

Mencari Fail UTF-8 dengan BOM dengan Cara Elegan

Mencari fail dengan BOM (Byte Order Mark) dalam pengekodan UTF-8 mungkin diperlukan untuk tujuan penyahpepijatan. Pendekatan biasa melibatkan penggunaan skrip shell atau arahan seperti 'cari' dan 'sed'. Tetapi adakah cara yang lebih mudah dan lebih elegan untuk mencapai perkara ini?

Satu perintah ringkas yang kedua-duanya mencari dan mengalih keluar BOM menampilkan dirinya sebagai pilihan yang menarik:

find . -type f -exec sed '1s/^\xEF\xBB\xBF//' -i {} \;

Arahan ini memanfaatkan 'cari ' utiliti untuk mengenal pasti semua fail dalam direktori tertentu, tidak termasuk fail binari. Ia kemudian menggunakan 'sed' untuk menggantikan urutan aksara BOM dengan rentetan kosong dalam baris pertama setiap fail yang disasarkan, dengan berkesan mengalih keluarnya.

Perhatikan bahawa arahan ini mengubah suai kandungan fail, jadi berhati-hati semasa berurusan dengan fail binari adalah penting.

Sebagai alternatif, jika anda hanya ingin menyenaraikan fail yang mengandungi BOM tanpa mengubah suainya, anda boleh menggunakan:

grep -rl $'\xEF\xBB\xBF' .

Arahan ini menggunakan 'grep' untuk mencari secara rekursif untuk fail yang mengandungi jujukan BOM dan memaparkan senarainya.

Semasa menggunakan editor teks atau makro untuk tugasan ini adalah mungkin, kesederhanaan dan kecekapan arahan di atas menjadikannya pilihan yang lebih baik.

Atas ialah kandungan terperinci Bagaimana untuk Mencari dan Mengalih Keluar Fail UTF-8 dengan BOM dengan Cekap?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn