距離/深さをどのように指定しますか?文書「コマンドはファイルを検索して」探す「定義?
普遍的な規格を作ろうとしている」/etc/マジック「様々な味のためにヘッダー、インポートした述語ライブラリを大規模に変換し、個人用プロジェクト環境に再配置できるようにします。
いくつかの「ターゲット」ファイルを確認した後に必要だと思います。最初の3,000文字以内で検索これをかなり成功したアプローチで見る文書です。
これまで私は成功しなかったので、次の2つの味/定義を試しました。
[1] 0 search/3072 [Pp][Rr][Oo][Ll][Oo][Gg] Prolog Predicate File (ISO-Compliant Prolog), ASCII text
そして
[2] 0 search [Pp][Rr][Oo][Ll][Oo][Gg] Prolog Predicate File (ISO-Compliant Prolog), ASCII text
2番目は成功しますが、ファイルの最初の行でパターンが見つかった場合にのみ成功します。
また、次の定義を試しました。
[3] 0 search :- Prolog Predicate File (Non-Specific :-)
そして
[4] 0 string % Prolog Predicate File (Non-Specific %), ASCII text
ただし、[2]行の下に[3]または[4]を入力すると、[2]の有効性は無視されるようです。また、何らかの理由で[3]は、ファイルの優先順位に関係なく、私の考えに[4]と一致する必要があるすべてのインスタンスを「克服する」ようです。
これは私の質問につながります:「ファイル」コマンドが私のマジックファイルで最初に見つかったときに終了するように指示し、それを報告しますか?
また、要件に準拠するために処理されるファイルを標準化するために、次の初期仕様セットを定義しました。
0 string %%Prolog Prolog Predicate File (Non-Specific)
0 string %%gprolog Prolog Predicate File (GNU Prolog)
0 string %%swipl Prolog Predicate File (SWI-Prolog)
0 string %%yap Prolog Predicate File (YAP Prolog)
0 string %%eclipse Prolog Predicate File (ECLiPSe)
0 string %%bprolog Prolog Predicate File (B-Prolog)
0 string %%poplog Prolog Predicate File (Poplog)
0 string %%lpaprolog Prolog Predicate File (LPA Prolog)
0 string %%isoprolog Prolog Predicate File (ISO-Compliant Prolog)
私はISO Prolog仕様に準拠していることを確認した述語ファイルを具体的に表示できるように、この最後の定義を作成しました。
はいいいえ最初の実行行を自動的に検出するために「shebang」(例:#!/ bin / gprolog)表記を使用したいと思います。
【追加の】ただ罠を見つけました。標準/組み込みの「shebang」表記はカスタム/etc/magicエントリの前に評価されますが、同時に/etc/magic定義が他のマジックシーケンスの前に評価されるようにインストールを設定するにはどうすればよいですか?
検索奥行き仕様に関するガイダンスをいただきありがとうございます。