file
コマンドによって検出される「通常の」テキストファイル(英語の文を含む)がありますASCII Pascal program text
。
Pascalプログラムテキストと一般的なASCII英語テキストの違いは何ですか?
私がやったhead -10 file > tmp
file tmp
それでも表示されますPascal
。
tmp
VIで開くとき:set list
HELEN'S BABIES$
$
With some account of their ways, innocent, crafty, angelic, impish,$
witching and impulsive; also a partial record of their actions during$
ten days of their existence$
$
By JOHN HABBERTON$
$
$
$
出力head file | od -c
0000000 H E L E N ' S B A B I E S \n \n
0000020 W i t h s o m e a c c o u n
0000040 t o f t h e i r w a y s ,
0000060 i n n o c e n t , c r a f t
0000100 y , a n g e l i c , i m p i
0000120 s h , \n w i t c h i n g a n d
0000140 i m p u l s i v e ; a l s o
0000160 a p a r t i a l r e c o r
0000200 d o f t h e i r a c t i o
0000220 n s d u r i n g \n t e n d a
0000240 y s o f t h e i r e x i s
0000260 t e n c e \n \n B y J O H N H
0000300 A B B E R T O N \n \n \n \n
0000314
ここにファイルをアップロードする:http://www.fileswap.com/dl/L0eCWJTvy/
バージョンをCentOS release 6.5
使用していますfile
5.04
4行目に何かがあります。 4行目から削除すると、テキストファイルとしてのみ検出されます。
ベストアンサー1
OS X 10.6.8およびOpenBSD 5.5-現在でこれを再現できました。
デバッグ情報の印刷では、Pascalキーワードが認識される前に、file -D tmp
テキストファイルが約2000回のテストに失敗することがわかりました。file(1)
record
そしてそれがパスカルプログラムテキストであるべきかどうかを決定します。
最小限の作業例は次のようにして得ることができる。
$ echo record > test
$ file test
test: ASCII Pascal program text
数多くの抽出の終わりに、「組み込みの仮定に基づいた3番目と最後のテストセット」だけが出てきました。ascmagic.c適用可能です。このテストでは、「ファイルのどこにでも表示できるキーワードに基づいて、私たちが知っているファイル形式」を識別します。したがって、ファイルを少し変更しても、そのファイルはASCII English text
3行目でtheir
toとして正しく識別されます。the