Cara Mengesan Fail UTF-8 Berawalan BOM dengan Cekap: Pendekatan Yang Diperhalusi

Patricia Arquette
Lepaskan: 2024-11-05 03:46:02
asal
665 orang telah melayarinya

How to Efficiently Locate BOM-Prefixed UTF-8 Files: A Refined Approach

Pendekatan Lebih Elegan untuk Mencari Fail UTF-8 Berawalan BOM

Untuk tujuan penyahpepijatan, mengenal pasti fail yang bermula dengan tanda pesanan (BOM) UTF-8 bait dalam direktori adalah penting. Walau bagaimanapun, kaedah sedia ada boleh berbelit-belit dan mungkin menghadapi masalah dengan nama fail yang mengandungi pemisah baris. Dalam artikel ini, kami menyelidiki penyelesaian yang lebih diperkemas.

Bermula dengan arahan asal, kami menggunakan find untuk melintasi direktori secara rekursif, menapis fail dan memaipkan nama mereka ke gelung sementara. Dalam gelung, head mengekstrak tiga bait pertama setiap fail dan membandingkannya dengan jujukan BOM yang dijangkakan ($'xefxbbxbf'). Fail yang memenuhi syarat ini kemudian diserlahkan.

Satu potensi kelemahan pendekatan ini ialah kerentanannya terhadap pemisah baris dalam nama fail. Untuk mengelakkan isu ini, kami membentangkan perintah alternatif yang bukan sahaja mencari fail awalan BOM tetapi juga menghapuskannya:

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

Arahan ini menggunakan sed untuk menggantikan urutan BOM dengan rentetan kosong dalam baris pertama setiap fail yang sepadan. Walau bagaimanapun, sila ambil perhatian bahawa tindakan ini akan mengubah suai mana-mana fail binari yang mengandungi aksara ini.

Bagi mereka yang mencari pendekatan tidak merosakkan, kami mengesyorkan arahan berikut:

grep -rl $'\xEF\xBB\xBF' .
Salin selepas log masuk

Arahan ini menggunakan grep untuk mencari dan menyenaraikan fail yang mengandungi jujukan BOM tanpa mengubah kandungannya.

Akhirnya, pilihan penyelesaian bergantung pada hasil yang diingini dan sifat fail yang sedang diperiksa.

Atas ialah kandungan terperinci Cara Mengesan Fail UTF-8 Berawalan BOM dengan Cekap: Pendekatan Yang Diperhalusi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!