উত্তর:
আপনি এখানে যান:
date +%Y%m%d%H%M%S
man dateউপরের দিকে যেমনটি বলা হয়েছে, আপনি dateকমান্ডটি এটির মতো ব্যবহার করতে পারেন :
date [OPTION]... [+FORMAT]
এটি, আপনি এটি দিয়ে শুরু করে একটি ফর্ম্যাট প্যারামিটার দিতে পারেন +। আমি সম্ভবত ফর্ম্যাটিং প্রতীকগুলির অর্থটি অনুমান করতে পারি:
%Y বছরের জন্য%m মাসের জন্য%d দিনের জন্যআপনি এটি এবং অন্যান্য ফর্ম্যাটিং প্রতীকগুলি খুঁজে পেতে পারেন man date।
আপনি যদি ব্যাশ ব্যবহার করে থাকেন তবে আপনি নিম্নলিখিত কমান্ডগুলির মধ্যে একটি ব্যবহার করতে পারেন:
printf '%(%Y%m%d%H%M%S)T' # prints the current time
printf '%(%Y%m%d%H%M%S)T' -1 # same as above
printf '%(%Y%m%d%H%M%S)T' -2 # prints the time the shell was invoked
আপনি স্টডআউটে মুদ্রণের পরিবর্তে -v varnameফলাফল সংরক্ষণের জন্য বিকল্পটি ব্যবহার করতে পারেন $varname:
printf -v varname '%(%Y%m%d%H%M%S)T'
যদিও ডেট কমান্ড সর্বদা একটি সাব-শেলের মধ্যে কার্যকর করা হবে (অর্থাত্ একটি পৃথক প্রক্রিয়াতে) প্রিন্টফ একটি অন্তর্নির্মিত কমান্ড এবং তাই দ্রুততর হবে।
%বিকল্পগুলিতে পাস করতে পারেন সে সম্পর্কে আরও ডকুমেন্টেশন সন্ধানের জন্য, এটি dateকমান্ডটি ব্যবহার করছে বলে মনে হচ্ছে । সুতরাং, man dateআপনাকে উপলভ্য বিকল্পগুলি দেবে।
প্যারামিটার সম্প্রসারণ (প্রয়োজনীয় bash 4.4বা আরও নতুন) ব্যবহার করে এটি করার জন্য আকর্ষণীয় / মজার উপায় :
${parameter@operator} - P operatorপ্রসারণটি এমন একটি স্ট্রিং যা প্যারামিটারের মানকে প্রসারিত করার ফলাফল হিসাবে মনে হয় এটি একটি প্রম্পট স্ট্রিং।
$ show_time() { local format='\D{%Y%m%d%H%M%S}'; echo "${format@P}"; }
$ show_time
20180724003251
"`date +%Y-%m-%d %H:%M:%S`"আমাকে একটি দেয়date: illegal time format