मैं युग के प्रारूप में फ़ाइल का माइम कैसे सेट करूँ?


11

मुझे पता है कि युगांतर प्रारूप में फ़ाइल का माइम कैसे प्राप्त करें :

stat --format=%Y <file>

लेकिन मैं यह पता लगाने में सक्षम नहीं हूं कि एपोक प्रारूप में फ़ाइल के माइम को कैसे सेट किया जाए । स्पर्श (1) मैन पेज केवल "टाइमस्टैम्प" मान (अधिक-या-कम-निश्चित प्रारूप जो महीने, दिन, घंटे, मिनट आदि) का उपयोग करता है या "ज्यादातर मुक्त प्रारूप मानव पठनीय तारीख स्ट्रिंग" को स्वीकार करता है।

क्या एक और उपयोगिता है जिसे मुझे देखना चाहिए?

धन्यवाद।


1
कृपया अपने ओएस को हमेशा शामिल करें। समाधान बहुत बार उपयोग किए जा रहे ऑपरेटिंग सिस्टम पर निर्भर करते हैं। क्या आप यूनिक्स, लिनक्स, बीएसडी, ओएसएक्स, कुछ और का उपयोग कर रहे हैं? कौन सा संस्करण?
terdon

जवाबों:



1

के साथ perl:

$ perl -e 'utime (stat($_))[8], time(), $_ for @ARGV' file1 file2 ...

यह सभी फ़ाइलों के माइम को बदल देगा @ARGV(stat($_))[8]फ़ाइल का समय है।

utime फ़ाइलों की सूची प्राप्त कर सकते हैं, अगर आपको बदलते समय के बारे में परवाह नहीं है, तो आप कोशिश कर सकते हैं:

 $ perl -e '$t = time(); utime $t, $t, @ARGV' file1 file2 ...

ध्यान दें

utimeसी रनटाइम लाइब्रेरी पर निर्भर करता है और फाइल सिस्टम का उपयोग कर रहा है। में और अधिक देखने perldoc -f utimeऔर perldoc perlport


0

touchजीएनयू कोर्यूटिल्स (यानी गैर-एम्बेडेड लिनक्स और सिग्विन पर) से कमांड के साथ, तिथि इनपुट प्रारूपों के प्रलेखन के लिए पूर्ण मैनुअल (आमतौर पर जानकारी प्रारूप में स्थानीय रूप से उपलब्ध) को देखें । युगों की तारीखों को उपसर्ग के साथ दर्शाया गया है :@

touch -d @1234567890 foo

यह बिजीबॉक्स के साथ भी काम करता है (कम से कम कुछ सिस्टम पर, यह संकलन विकल्पों पर निर्भर हो सकता है)।

* बीएसडी के साथ, मुझे नहीं लगता कि आप touchअकेले ऐसा कर सकते हैं, लेकिन आप dateयुग को प्रारूप में touchस्वीकार करने वाले प्रारूप में कॉल कर सकते हैं ।

touch -d "$(date -r 1234567890 +%Y%m%d%H%M.%S)" foo

POSIX कुख्यात तारीखों में हेरफेर करने के तरीकों की कमी है। आप पर्ल का उपयोग कर सकते हैं

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