Unix 的“文件”命令有多长?

Unix 的“文件”命令有多长?

当您将文本文件传递给 Unixfile命令时,它可能会告诉您类似的内容:

input.txt: UTF-8 Unicode English text, with very long lines

有人能告诉我一行必须包含的最少字符数吗很长?手册页没有提到这一点,我也不想搜索源代码。如果有人能告诉我如何将这个问题放入 Google 查询中,而不会返回十亿条结果,而且几乎所有结果都是无关紧要的,我也会很高兴。

答案1

ascmagic.c文件Ubuntu 上的源包:

#include "names.h"

#define MAXLINELEN 300  /* longest sane line length */
#define ISSPC(x) ((x) == ' ' || (x) == '\t' || (x) == '\r' || (x) == '\n' \
          || (x) == 0x85 || (x) == '\f')

似乎一行需要超过 300 个字符才被认为“非常长”。

答案2

超过300个字符,根据源代码中ascmagic.c的第52行和214-215行。

源代码可以在这里找到(链接取自 Debian 手册页file): ftp://ftp.astron.com/pub/file/

答案3

暴力破解(另外这是一个程序,对吧?所以它与编程相关?):

$ for i in {1..301}; do printf "%${i}s" "." | file - | grep very && echo $i; done
/dev/stdin: very short file (no magic)
1
/dev/stdin: ASCII text, with very long lines, with no line terminators
301

答案4

如果一行超过 300 个字符,则认为该行很长。

相关内容