यूनिक्स 'फ़ाइल' कमांड के लिए कितना लंबा है?


16

जब आप यूनिक्स fileकमांड पर एक टेक्स्ट फाइल पास करते हैं , तो यह आपको कुछ बता सकता है:

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

क्या कोई मुझे वर्णों की न्यूनतम संख्या बता सकता है जिसमें एक पंक्ति को बहुत लंबा माना जाना चाहिए ? मैन पेज इस बारे में कुछ नहीं कहते हैं और मैं सोर्स कोड नहीं खोजना चाहता। यदि कोई मुझे बता सकता है कि इस प्रश्न को एक Google क्वेरी में कैसे रखा जाए, जो एक अरब परिणाम वापस नहीं करता है, जिनमें से लगभग सभी अप्रासंगिक हैं, तो मुझे खुशी होगी।

unix  shell 

3
स्रोत कोड को खोजने की अनिच्छा के कारण सुपरयुसर में जाने के लिए वोट करें।
ग्रेग हेवगिल

आप लोगों के पास एक बिंदु है - मैं अगली बार स्रोत कोड खोजूंगा। फिर भी धन्यवाद!

जवाबों:


23

से 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 से अधिक वर्णों की आवश्यकता होती है।


7

स्रोत कोड में ascmagic.c पर लाइनों 52 और 214-215 के अनुसार 300 से अधिक चॉकर्स।

स्रोत कोड यहां पाया जा सकता है (इसके लिए डेबियन मैन पेज से लिंक किया गया लिंक file): ftp://ftp.astron.com/pub/file/


7

जानवर बल (प्लस यह एक कार्यक्रम है, ठीक है? इसलिए यह इसे संबंधित प्रोग्रामिंग बनाता है?):

$ 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

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.