「アーカイブ」という表示は何ですか?`テキストに似たファイルの種類を決定するために使用されますか?

「アーカイブ」という表示は何ですか?`テキストに似たファイルの種類を決定するために使用されますか?

LaTeXソースファイルが複数あり、すべて同じ構造を持ち、すべてUnixスタイルの行末を持ち、すべてUTF-8、すべてほぼ同じサイズ(1-2KB)、すべてインデントにスペースを使用します。それらはより大きなドキュメント内に含まれており、各ファイルはドキュメントの別々のセクションをカバーし、各セクションは同じレイアウトを持っています(したがって、各ファイルは同じ構造を持ち、基本的に同じLaTeXコマンド、単に異なるテキストコンテンツを持ちます)。 )。多くのLaTeXコマンドを直接含む開始/終了。今奇妙なことは次のとおりです。

$ file *.tex
file1.tex: LaTeX document, Unicode text, UTF-8 text
file2.tex: CSV text

これはほんのわずかな抜粋であり、CSVとLaTeXの検索は完全にランダムであり、CSVの検索頻度はわずかに低いが(CSV 40%、LaTeX 60%)タイプは各ファイルで再現可能です。

CSV検出ファイルで一部の形式と内容を変更しようとしましたが、まだCSVとして検出されます。

ここで何が起こっているのでしょうか?

ベストアンサー1

ほとんどのファイルタイプの検出はfile「魔法の」値に基づいています。一束のファイルから; TeXファイル自己テスト秘密のセットがあります。

ただし、CSVファイルは異なる方法で処理されます。file専用ルーチンがあります。。ファイルの最初の10行からカンマ区切りのフィールド数を計算します。各行に複数のフィールドがあり、ファイルに複数の行があり、最初の10行(または10行未満の場合はファイル全体)の番号が同じ場合、ファイルはCSVファイルとして認識されます。フィールドの。

次のオプションを使用してCSV検出を無効にできます-e

file -e csv -- *.tex

おすすめ記事