Berapa lama untuk perintah 'file' Unix?


16

Ketika Anda mengirimkan file teks ke fileperintah Unix , itu mungkin memberi tahu Anda sesuatu seperti:

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

Adakah yang bisa memberi tahu saya jumlah karakter minimum yang harus dimiliki suatu baris untuk dianggap sangat lama ? Halaman manual tidak mengatakan apa-apa tentang ini dan saya tidak ingin mencari kode sumber. Jika seseorang dapat memberi tahu saya cara memasukkan pertanyaan ini ke dalam kueri Google yang tidak menghasilkan satu miliar hasil, hampir semuanya tidak relevan, saya juga akan senang.

unix  shell 

3
Pilih untuk pindah ke superuser karena keengganan untuk mencari kode sumber.
Greg Hewgill

Kalian ada benarnya - saya akan mencari kode sumber waktu berikutnya. Bagaimanapun, terima kasih!

Jawaban:


23

Dari ascmagic.cdalam paket sumber file di 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')

Sepertinya garis harus lebih dari 300 karakter agar dianggap "sangat panjang".



7

Brute force (plus ini adalah sebuah program, bukan? Jadi itu membuatnya terkait pemrograman?):

$ 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

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.