मैंने PHP में एक टेक्स्ट फ़ाइल की अंतिम पंक्ति पॉपिंग के संबंध में question से पूछा, और अब, क्या शैल स्क्रिप्ट में तर्क को फिर से लिखना संभव है?खोल: एक बड़ी टेक्स्ट लॉग फ़ाइल की अंतिम पंक्ति को हटाएं
मैं इस कोशिश की अंतिम पंक्ति प्राप्त करने के लिए:
tail -n 1 my_log_file.log
लेकिन मैं कैसे मैं अंतिम पंक्ति को हटाने और फाइल को सेव कर सकते हैं यकीन नहीं है।
पीएस दिया गया है कि मैं उबंटू सर्वर का उपयोग करता हूं।
ध्यान दें कि "डब्ल्यूसी" आधारित समाधान के विपरीत मैंने दिया जो जीएनयू सिस्टम पर काम करेगा, उपर्युक्त केवल शून्य में सही ढंग से काम करेगा यदि अंतिम पंक्ति में एनयूएल वर्ण हैं। साथ ही, अगर अंतिम पंक्ति एनएल समाप्त नहीं होती है तो यह सही तरीके से काम नहीं करेगा। –
इसके अलावा, 'truncate' _bytes_ में आकार की अपेक्षा करता है, जबकि '$ {# LAST}' वर्णों की संख्या में' $ LAST' की लंबाई की गणना करता है। आप बराबर होने के लिए लोकेल को सी में सेट करना चाहते हैं। अन्यथा, अगर अंतिम पंक्ति में बहु-बाइट वर्ण होते हैं तो यह ठीक से काम नहीं करेगा। –