क्या टेल --follow = name (-F) जैसी सुविधा कम है


41

में lessबदलने के लिए कमांड का उपयोग किया जा सकता tailहै

tail -f file

बाइनरी आउटपुट से निपटने और स्क्रॉलबैक नेविगेट करने जैसी सुविधाएँ प्रदान करने के लिए:

less +F file

+उपसर्ग का अर्थ है "मुझे लगता है कि टाइप स्टार्टअप के बाद नाटक", और कुंजी Fशुरू होता है के बाद।

लेकिन lessबदल भी सकते हैं

tail --follow=name file

जो fileवास्तविक फ़ाइल हटाए जाने या दूर चले जाने के बाद भी, उस लॉग फ़ाइल की तरह ले जाया जाता है file.log.1, और उसके बाद उसी फ़ाइल के नाम के साथ एक नई फ़ाइल बनाई जाती है, जो इस प्रकार है?


1
आप के साथ less --follow-nameया कोशिश कर सकते हैंless --follow-name +F
don_crissti

@don_crissti नीस ... less --follow-name +Fयह है - पता नहीं कैसे मैं चूक गया कि - मुझे पूरा यकीन था कि मैंने follow... के लिए मैन पेज खोजा था । इसका उत्तर बनाओ!
वोल्कर सेगेल

खैर, कुछ और खोज से पता चलता है कि यह पहले से ही पूछा गया है और यहां जवाब दिया गया है इसलिए मैं इसे एक टिप्पणी के रूप में छोड़ दूंगा। आप हमेशा वहां उत्तर को बढ़ा सकते हैं।
don_crissti

@don_crissti अधिकार ... सिवाय इसके कि आपका सही उत्तर नहीं मिला है - --follow-nameवर्णित है, लेकिन +Fकभी उल्लेख नहीं किया गया है, और मुझे लगता है कि यह बहुत महत्वपूर्ण है क्योंकि यह व्यापक रूप से स्पष्ट रूप से ज्ञात नहीं है।
वोल्कर सेगेल

यदि आप Google खोज के कारण यहां आए हैं less follow, तो सवाल पढ़ें। यह पहले से ही जवाब देता है कि lessफ़ाइल परिवर्तन कैसे करें!
ह्यूबर्ट ग्रौस्सोवाकियाक

जवाबों:


40

हाँ, lessफ़ाइल नाम से अनुसरण कर सकते हैं

फीचर में काफी अस्पष्ट सिंटैक्स है:

less --follow-name +F file.log

कम के साथ, विकल्प --follow-nameसे अलग है । यह फ़ाइल का अनुसरण नहीं करता है , इसके बजाय यह फ़ाइल नाम के आधार पर कम के अंदर कमांड कुंजी के व्यवहार को संशोधित करता है , न कि फ़ाइल विवरणक को। tail--follow=name
lessF

साथ ही, lessफॉलो मोड में शुरू करने के लिए कोई सामान्य विकल्प नहीं है।
लेकिन आप स्टार्टअप के बाद उन्हें निष्पादित करने के लिए कीस्ट्रोक्स देने के लिए कमांड लाइन का उपयोग कर सकते हैं +
संशोधक विकल्प के साथ संयोजन +F, lessवास्तव में (संशोधित) अनुसरण मोड में शुरू होगा।

+Fसादे के बराबर के लिए अकेले का उपयोग करें tail -f:

less +F file.log

मुझे संदेह है कि यदि आप कम के साथ एक अनंत धारा का पालन करते हैं, तो यह अंततः आपकी मेमोरी को समाप्त कर देगा क्योंकि टेल -f के विपरीत, उपयोग की जाने वाली मेमोरी की मात्रा टर्मिनल स्क्रॉलबैक सीमा (जब तक टर्मिनल स्क्रॉलबैक सीमा भी अनंत नहीं है) तक सीमित नहीं है। कम + एफ को संपूर्ण स्क्रॉलबैक इतिहास को संरक्षित करना है, और हार्डडिस्क पर फ़ाइल से स्लाइस को फिर से लोड करने पर भरोसा नहीं कर सकता है।
CMCDragonkai

@CMCDragonkai दिलचस्प बिंदु। lessफ़ाइल ( -bऔर -B) के लिए उपयोग किए जाने वाले बफर आकार को नियंत्रित करने के लिए विकल्प हैं , यह मेरे लिए स्पष्ट नहीं है कि क्या आकार डिफ़ॉल्ट रूप से सीमित है।
वोल्कर सीगल

इसके लिए मैन पेज -Bकहता है कि "डिफ़ॉल्ट रूप से, जब पाइप से डेटा पढ़ा जाता है, तो बफ़र्स को आवश्यकतानुसार स्वचालित रूप से आवंटित किया जाता है। यदि बड़ी मात्रा में डेटा पाइप से पढ़ा जाता है, तो इससे बड़ी मात्रा में मेमोरी आवंटित की जा सकती है।" -बी विकल्प पाइपों के लिए बफ़र्स के इस स्वचालित आवंटन को निष्क्रिय करता है, ताकि पाइप के लिए केवल 64 K (या -b विकल्प द्वारा निर्दिष्ट स्थान की मात्रा) का उपयोग किया जाए। " तो इसका मतलब है कि जब एक अनंत पाइप से पढ़ते हैं, तो अनंत मेमोरी डिफ़ॉल्ट रूप से आवंटित की जाती है, लेकिन अगर लॉग फ़ाइल जैसी फ़ाइल से पढ़ते हैं, तो डिफ़ॉल्ट रूप से 64 K स्लाइस का उपयोग किया जाता है।
CMCDragonkai

4

फेडोरा में कम से कम एक + एफ विकल्प होता है जो फ़ाइल की सामग्री का अनुसरण करता है जैसे पूंछ -f करता है।

अपडेट करें, साथ ही मोड का अनुसरण करने के लिए कम टॉगल में F को मारने का प्रयास करें


क्या आपको यकीन है? मेरे कम में एक परस्पर विरोधी विकल्प है, जिसका नाम है -F: कम का आदमी पृष्ठ कहता है -F or --quit-if-one-screen:। lessआपके पास कौन सा संस्करण है? खदान less 458विकल्प के साथ कहता है -V
वोल्कर सीगल


बहुत दिलचस्प, लिंक के लिए धन्यवाद! ऐसा लगता है कि एक गन्न कम नहीं है। की पूरी पहली पंक्ति less -Vहै less 458 (GNU regular expressions)। कृपया मुझे अपना संस्करण दें।
वोल्कर सिएगेल

हां, मुझे यकीन है, लेकिन आगे बढ़ें और मुझे वोट दें,
स्टैकएक्सचेंज

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