मेरे पास इसकी एक फाइल है:
1415602803,LOGIN SUCCESS,AUTH,user2,192.168.203.63,10.146.124.73,59996,22
1415602807,LOGIN SUCCESS,AUTH,user1,172.24.31.10,172.32.1.1,48191,22
1415602811,LOGIN FAILED,AUTH,root,172.24.166.153,10.146.124.73,52506,22
1415602815,LOGIN FAILED,AUTH,user3,192.168.123.55,10.146.32.99,55750,22
मैं इस प्रारूप में टाइमस्टैम्प को तारीख में बदलना चाहता हूं:
2014-11-10 02:00:03,LOGIN SUCCESS,AUTH,user2,192.168.203.63,10.146.124.73,59996,22
2014-11-10 02:00:07,LOGIN SUCCESS,AUTH,user1,172.24.31.10,172.32.1.1,48191,22
2014-11-10 02:00:11,LOGIN FAILED,AUTH,root,172.24.166.153,10.146.124.73,52506,22
2014-11-10 02:00:15,LOGIN FAILED,AUTH,user3,192.168.123.55,10.146.32.99,55750,22
मैं उसे कैसे कर सकता हूँ?
मुझे पता है कि यह काम करता है: perl -pe 's/(\d+)/localtime($1)/e'( इस सवाल से ) लेकिन आउटपुट स्वरूप है Mon Nov 10 02:00:03 2014।
मुझे पता है कि यह कमांड टाइमस्टैम्प को मेरे वांछित आउटपुट में बदल सकती है: date -d@1415602803 +"%F %H:%M:%S"लेकिन मैं सभी उद्धरणों और व्हाट्सएप के कारण इसका awkउपयोग नहीं कर सका system("cmd")।
awk 'BEGIN{ print strftime("%Y-%m-%d %H:%M:%S", 0) }'awk: line 2: function strftime never definedयहाँ देता है। कृपया स्पष्ट करें कि हर किसी के पास नहीं हैstrftime()! अधिकांश (सभी?) AWK में चलने वाले समाधान के लिए, कृपयाdateपोर्टेबल रहने के लिए बाहरी कमांड का उपयोग करें ।