2013-07-06 9 views
6

में दिनांक कैसे करूं, मुझे अपेक्षित स्क्रिप्ट के भीतर वर्तमान दिनांक (या समय) तक पहुंच की आवश्यकता है ताकि मैं इसे अपेक्षित स्क्रिप्ट के भीतर बनाई गई निर्देशिकाओं में जोड़ सकूं। इन आवश्यकताओं के कुछ इसी तरह से किया पानेमैं एक स्क्रिप्ट स्क्रिप्ट

mkdir file<date> 

मैं के रूप में

date | tr " " "-" | cut -f 2,4 -d "-" 

खोल के माध्यम से तारीख कर सकते हैं हालांकि, मैं यह करने के लिए उपयोग नहीं कर सकते हैं जैसे कि उम्मीद जैसे

set var = `date | tr " " "-" | cut -f 2,4 -d "-"` 

मैं एक खोल स्क्रिप्ट में इस डाल और फिर इसे गूंज और $expect_out(buffer) के रूप में विस्तृत here में उत्पादन हो रही है कुछ नहीं कर सकते। हालांकि, बफर को भी संकेत मिलता है जिसे के रूप में हटाया जाना आवश्यक है, ध्यान दें कि $expect_out(buffer) वास्तव में लोगों को क्या नहीं चाहता है; इसे आम तौर पर प्रॉम्प्ट को खत्म करने के लिए कम से कम फ़िल्टर करने की आवश्यकता होती है।

उत्तर

12

में उम्मीद करते हैं, आप में निर्मित clock आदेश का प्रयोग करेंगे:

set now [clock seconds] 
set date [clock format $now -format {%b-%d}] 
set file file.$date 

या एक ही बार में:

set file file.[clock format [clock seconds] -format {%b-%d}] 

मैं दृढ़ता से एक दिनांक स्वरूप है कि समझदारी से सॉर्ट करता

का उपयोग करने के लिए प्रोत्साहित करते हैं
set file file.[clock format [clock seconds] -format {%Y-%m-%d}] 
+0

उत्कृष्ट प्रतिक्रिया। धन्यवाद। – doon

+0

@ डून उम्मीद में आप 'टाइमस्टैम्प' अंतर्निर्मित कमांड का उपयोग कर सकते हैं जैसे 'सेट फ़ाइल फ़ाइल। [टाइमस्टैम्प -फॉर्मैट {% वाई-% एम-% डी}] '। –

1

एक उम्मीद स्क्रिप्ट से कट:

# set DATE variable in expect script 
set DATE [exec date +%F] 
send "This is test with expect on $DATE try 4\r" 
send ".\r" 
+0

क्या आप कुछ स्पष्टीकरण जोड़ सकते हैं कि यह कैसे काम करता है? –