क्लिंक / सीएमडी प्रॉम्प्ट में वर्तमान तिथि / समय कैसे जोड़ा जाए


12

मैं की एक नहीं बल्कि खुश उपयोगकर्ता हूँ झंकार महान के माध्यम से cmder पैकेज। केवल एक चीज जो मुझे याद आती है वह वर्तमान तिथि / समय (और अंतिम निकास कोड, इतिहास संख्या, जैसे bash... आदि) को प्रदर्शित करने के लिए कमांड प्रॉम्प्ट सेट करने का एक आसान तरीका है ।

क्या कोई मुझे यह करने के लिए सही दिशा की ओर इशारा कर सकता है?


क्या आप सिर्फ विंडोज का उपयोग कर सकते हैं date /t? इसके अलावा, विंडोज़ अंतिम एक्ज़िट कोड को स्टोर %errorlevel%करता है, जबकि श का उपयोग करता है $?। उन की कोशिश करो।
बॉब

लेकिन उस आउटपुट को प्रॉम्प्ट पर कैसे एकीकृत किया जाए? मैं date /tकुछ लंबे चलने वाले कमांड चलाने से पहले हर बार दौड़ना नहीं चाहता ।
Zsolt Botykai

ओह। जाओ prompt /?, वहाँ एक तारीख और समय विकल्प है। फिर से, यह मानक विंडोज कमांड प्रॉम्प्ट है - मुझे नहीं पता कि क्लिंक या बिल्डर क्या करते हैं।
बॉब

जवाबों:


9

इस प्रॉम्प्ट सेटिंग को आज़माएं (उदाहरण के लिए, यह दिखाता है कि आप "प्रॉम्प्ट प्रिंटिंग" के अंदर किसी भी कंसोल एप्लिकेशन को कैसे कॉल कर सकते हैं)। ध्यान दें! यह ConEmu में ही काम करता है।

prompt $p$s$e]9;7;"cmd /c echo (%DATE% %TIME%)"$e\$g

लेकिन, जैसा कि बॉब ने कहा, एक आसान तरीका है:

prompt $p$s$d$s$t$s$g

और cmderआपके लिए आपूर्ति init.batको संपादित करना चाहिए क्योंकि यह शीघ्र सेटिंग्स को परिभाषित करता है।


Cmder के लिए, शीघ्र सेटिंग्स संपादित करने का सुझाया तरीका अंदर है %CMDER_ROOT%\config\user-startup.cmdऔर नहीं init.bat
wegry

Cmder के साथ win7 पर, $tमेरे लिए चाल चली :@prompt $E[1;32;40m$P$S{git}{hg} $t$S$_$E[1;30;40m{lamb}$S$E[0m
बेंज

@ इस %CMDER_ROOT%\config\user-startup.cmdफ़ाइल का मेरे कॉन्फ़िगरेशन पर कोई प्रभाव नहीं पड़ता है। शायद मैं यह गलत कर रहा था।
बेंज

@Benj यह पहली बार में मेरे लिए काम नहीं कर रहा था, लेकिन बाद में इसे फिर से शुरू किया? मैंने जो काम करना शुरू किया, उससे मैं रोमांचित हूं।
बजे

2
2018 में मेरे prompt cmd /c echo ($t$s) :$p$gलिए user-profile.cmdफ़ाइल (windows10) में जोड़ने का काम किया ।
एडविन

10

मैक्सिमस द्वारा प्रदान किया गया उत्तर अब cmder 1.3+ के लिए मान्य नहीं है

आपको अपने अनुकूलित फ़ोल्डर (स्रोत) के साथ अपने cmder फ़ोल्डर के अंदर एक .luaफ़ाइल (पूर्व के लिए my_prompt.lua) बनानी होगीconfig

मेरे अनुकूलन के नीचे:

function custom_prompt()
  cwd = clink.get_cwd()
  prompt = "\x1b[1;32;40m{cwd} {git}{hg} \n\x1b[1;30;40m{time}\n{lamb} \x1b[0m"
  new_value = string.gsub(prompt, "{cwd}", cwd)
  add_time = string.gsub(new_value, "{time}", os.date("%x - %X"))
  clink.prompt.value = string.gsub(add_time, "{lamb}", "λ")
end

clink.prompt.register_filter(custom_prompt, 1)

और यह परिणामी संकेत है

C:\
03/25/17 - 20:56:14
λ

आप Lua मैनुअल में समय आउटपुट के लिए अधिक अनुकूलन विकल्प पा सकते हैं


टिप्पणी की गई त्रुटि के लिए अद्यतन

function time_prompt()
    os.setlocale ("", "time")
    local cwd = clink.get_cwd()
    local prompt = "\x1b[1;32m{cwd} {git}{hg} \n\x1b[30m{time}\n{lamb} \x1b[0m"
    local new_value = string.gsub(prompt, "{cwd}", cwd)
    local add_time = string.gsub(new_value, "{time}", os.date("%x - %X"))
    clink.prompt.value = string.gsub(add_time, "{lamb}", "λ")
end

मैक्सिमस का उत्तर सही है, लेकिन यह सबसे अच्छा जवाब है!
ऑथरपॉक्सी

D:\Tools\cmder\config\my_prompt.lua:1: unexpected symbol near char(255) और प्रॉम्प्ट ऐसा दिखता है: `1: 26.51)": \ _
डेविल्स एडवोकेट

एमएमएम मुझे नहीं पता कि वह क्या है, लेकिन फिर से मेरी लुआ फाइल की जाँच करना यह मेरे द्वारा पोस्ट किए गए पुराने कोड के समान नहीं है, मुझे बताएं कि क्या मैं अभी जो अपडेट कर रहा हूं उसका उपयोग कर रहा हूं।
ग्रुबर

मैक्सिमस के जवाब में @Edwin की टिप्पणी ने मेरे लिए काम किया। prompt cmd /c echo ($t$s) :$p$gमेंuser-profile.cmd
डेविल्स एडवोकेट

यह अकेले मेरे git bash प्रॉम्प्ट में cmder में कुछ भी नहीं बदलता है। क्या cmder को स्टार्टअप में सभी फ़ोल्डर में .lua फ़ाइलों को पढ़ना और निष्पादित करना चाहिए?
AsGoodAsItGates

0

सीडर के लिए एक पंक्ति संशोधन। इसे cmder \ config \ my_config.lua पर रखें

function my_prompt_filter()
    cwd = clink.get_cwd()
    prompt = "\x1b[1;32;40m{cwd}{git}{hg} $> \x1b[33;40m"
    new_value = string.gsub(prompt, "{cwd}", cwd)
    clink.prompt.value = string.gsub(new_value, "{lamb}", "λ")
end

clink.prompt.register_filter(my_prompt_filter, 1)

परिणाम:

C:\Users\user1 $>
C:\Users\user1 $> date
The current date is: 02.02.2018
C:\Users\user1 $>

0

यहाँ समाधान में से कोई भी मेरे लिए काम नहीं किया, इसलिए मैं अपने में निम्नलिखित पंक्ति जोड़कर समाप्त हुआ .bashrc:

alias myprompt='export PS1="\[\e]9;9;"\w"\007\e]9;12\007\]\[\033]0;$MSYSTEM:${PWD//[^[:ascii:]]/?}\007\]\[\033[32m\]\u@\h \[\033[33m\]\w\[\033[36m\]`__git_ps1`\[\033[0m\] \D{%T}\nλ "'

वह अंतिम भाग वह \D{%T}है जो वर्तमान समय दिखाता है (तारीख की परवाह न करें, जैसा कि आमतौर पर मुझे यह जानने की जरूरत है कि मैंने एक कार्य शुरू करने के बाद कितना समय व्यतीत किया है)।

बेशक, यह स्वचालित रूप से सभी गिट बश टर्मिनलों पर संकेत नहीं बदलता है। आपको mypromptइसे बदलने के लिए डिफ़ॉल्ट प्रॉम्प्ट पर कमांड निष्पादित करना होगा। मैंने .bashrcफ़ाइल के अंदर उपरोक्त निर्यात करने की कोशिश की, लेकिन मुझे एक त्रुटि मिल रही थी। हो सकता है कि किसी को इस बारे में बेहतर विचार होगा कि उसे कैसे प्राप्त किया जाए।

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