Im कुछ बैकअप स्क्रिप्ट बनाने की कोशिश कर रहा है क्योंकि लॉग फाइलें बड़ी और बड़ी हो जाती हैं। मेरे पास वर्तमान फ़ाइल को कॉपी कर रहा है, (उदाहरण के लिए secureफ़ाइल में /var/log/) और उस फ़ाइल से सामग्री को हटा दें। लेकिन वहाँ की तरह नाम के साथ कुछ फाइलें हैं: secure.1, secure.2और यह सब मुझे पसंद है उनकी गणना, और यदि संख्या में बड़ा है तो 2उन सब को संग्रह करने के लिए। मुझे इस फ़ाइलों को खोजने या उन्हें गिनने की विधि नहीं मिल रही है। पहले लगता है कि मेरे पास आया था:
find /var/log/ -name *.1 | wc -l
और यह हमेशा प्रिंट रहेगा 1क्योंकि एक फाइल है secure.1। मैं लूप के लिए कैसे गणना कर सकता हूं जहां मैं कई तरह की संख्याओं को निर्दिष्ट कर सकता हूं {1..5}। क्या इस फ़ाइलों को अलग करने और उन्हें एक बनाने के लिए एक तरीका है और उन्हें बैकअप या हटाना या कभी भी ... या सबसे पहले मैं यह सब कैसे पा सकता हूं जो संख्या के साथ समाप्त होता है।
logrotateआपके उद्देश्य के लिए आपकी जांच होनी चाहिए ।
find /var/log/ -name '*.1' ...