Нормальный текстовый файл, обнаруженный файлом как текст программы ASCII Pascal

У меня есть «нормальный» текстовый файл (содержит английские предложения), который обнаруживается командой 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 head file | od -c

 0000000 HELEN ' SBABIES \n \n 0000020 W ithsomeaccoun 0000040 toftheirways , 0000060 innocent , craft 0000100 y , angelic , impi 0000120 sh , \nwitchingand 0000140 impulsive ; also 0000160 apartialrecor 0000200 doftheiractio 0000220 nsduring \ntenda 0000240 ysoftheirexis 0000260 tence \n \n B y JOHNH 0000300 ABBERTON \n \n \n \n 0000314 

Загруженный файл: http://www.fileswap.com/dl/L0eCWJTvy/

Я на CentOS release 6.5 , версия file 5.04

В 4-й строке есть что-то. Удаление с 4-й строки далее обнаруживает ее как только текстовый файл

One Solution collect form web for “Нормальный текстовый файл, обнаруженный файлом как текст программы ASCII Pascal”

Я смог воспроизвести это как на OS X 10.6.8, так и на OpenBSD 5.5-current.

Распечатывая отладочную информацию с помощью file -D tmp , выясняется, что ваш текстовый файл не прошел примерно 2000 тестов, прежде чем file(1) распознает record ключевого слова Pascal и решает, что это должен быть текст программы Pascal.

Минимальный рабочий пример можно получить следующим образом:

 $ echo record > test $ file test test: ASCII Pascal program text 

После многочисленных эвристик применяется только «третий и последний набор тестов, основанных на жестких предположениях» в ascmagic.c . Эти тесты распознают «типы файлов, которые мы знаем на основе ключевых слов, которые могут появляться в любом месте файла». Поэтому минимальные изменения в вашем файле приводят к правильной идентификации в виде ASCII English text на ASCII English text , например, путем изменения their в третьей строке.

  • Что я сделал с моим / домашним / пользовательским каталогом?
  • Как очистить данные от всех файлов, присутствующих в каталоге?
  • Используйте rsync для сравнения удаленного каталога с локальным и сохраните различия в другом локальном каталоге
  • Создание домашнего файлового сервера с использованием Arch Linux
  • Проверить, был ли файл изменен после даты в имени файла
  • Мониторинг файлов непрерывно с помощью lsof
  • Заменяйте строки, соответствующие шаблону, строками из другого файла в порядке
  • Zabbix-agent: не может stat 'filename.log': Permission denied
  • Утилита командной строки для визуализации того, как быстро растет файл?
  • Как редактировать / etc / inittab?
  • Добавление вывода команды в цикл for
  • Linux и Unix - лучшая ОС в мире.