मैं सोच रहा था कि क्या टर्मिनल प्रॉम्प्ट में टाइमस्टैम्प जोड़ना संभव है, और यदि हां, तो मैं इसे कैसे प्राप्त कर सकता हूं?
मैं सोच रहा था कि क्या टर्मिनल प्रॉम्प्ट में टाइमस्टैम्प जोड़ना संभव है, और यदि हां, तो मैं इसे कैसे प्राप्त कर सकता हूं?
जवाबों:
इस लाइन को ~/.bashrc
फाइल में जोड़ें :
export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\ "
तो आउटपुट कुछ इस तरह होगा:
[07:00:31] user@name:~$
date
आदेश, आप बदल सकते हैं +%H:%M:%S
के साथ +%T
।
मेरा समाधान http://bashrcgenerator.com/ का उपयोग करके .bashrc में डालने के लिए इस PS1 लाइन को बनाने के लिए किया गया था:
export PS1="\t [\u@\h \W]\\$ \[$(tput sgr0)\]"
जो दिखेगा
13:05:54 [chad@work-laptop:~/Downloads]$ ls -al
PROMPT_COMMAND का उपयोग मेरे लिए इतिहास को गड़बड़ कर देता है। जब इतिहास के माध्यम से साइकिल चलाते समय एक लंबी लाइन आती है, तो यह शीघ्रता के अंत से कट जाता है, जैसे कि टाइमस्टैम्प जो सामने से जोड़ा गया था। जैसे
13:14:38 [chad@work-laptop:~/Doexport PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\\] "
और इस पंक्ति को संपादित नहीं किया जा सकता है क्योंकि यह पात्रों को सही स्थान पर प्रदर्शित नहीं करता है, क्योंकि आप टाइप नहीं कर रहे हैं जहां यह दिखता है कि आप टाइप कर रहे हैं।
मुझे लगता है कि यह PROMPT_COMMAND के साथ किया जा सकता है, शायद उस [$ (tput sgr0)] भाग का उपयोग करके, लेकिन PS1 काम करता है।
अपने आप को शीघ्र जोड़ने की तिथि जोड़ने के बजाय, आप अपने संकेत के ठीक पहले की तारीख को अपने शीर्ष पर निम्नलिखित पंक्ति में जोड़ सकते हैं .bashrc
। इसके काम के लिए आपको इंस्टॉल करने की भी आवश्यकता होगी cowsay
। यह जबकि एक रखने की तारीख को प्रदर्शित करने में एक मजेदार तरीका है लघु शीघ्र:
cowsay "Welcome $USER! It's now $(date '+%A %B %d %Y %r')"
अपने वर्तमान स्वरूप में यह संशोधन के बिना किसी की प्रणाली पर काम करेगा क्योंकि यह वर्तमान वातावरण से $USER
और date
चर को पढ़ता है।
चूंकि मेरे पास इसे सुधारने के उत्तर के लिए एक टिप्पणी जोड़ने के लिए पर्याप्त प्रतिष्ठा अंक नहीं हैं। ऐसा लगता है कि जिस तरह से मैं जानकारी जोड़ सकता हूं वह केवल एक दूसरा उत्तर बनाने के लिए है। इसलिए, मैं उत्तर दूंगा कि उत्तर के रूप में कहा गया था और उस पर निर्माण किया गया था।
उस उपयोगकर्ता के लिए .bashrc फ़ाइल को संपादित करें जिसे आप तारीख के लिए संशोधित करना चाहते हैं।
यदि आप "उपयोगकर्ता @ होस्ट: ~ $" देखते हैं तो आप अपने वर्तमान उपयोगकर्ता के होम डायरेक्टरी में हैं। .Bashrc फ़ाइल एक छिपी हुई फ़ाइल है क्योंकि यह डॉट के साथ उपसर्ग करती है ""। इसे एक सूची में देखने के लिए आपको एक लंबी सूची का उपयोग करना होगा।
आप "ls -a" का उपयोग कर सकते हैं और फिर आपको ".bashrc" फ़ाइल देखनी चाहिए।
पाठ संपादक के साथ फाइल को संपादित करें। निर्वासन के लिए, "नैनो .bashrc", "vim .bashrc", "vi .bashrc", "pico .bashrc" या जो भी संपादक आप उपयोग करना चाहते हैं।
यदि आप इसे स्क्रिप्ट करना चाहते हैं और कई उपयोगकर्ताओं के लिए इसे कई गोले में जोड़ने पर योजना बना रहे हैं, तो यह "इको" कमांड को एपेंड ">>" ऑपरेटर के साथ मिलकर उपयोग करने के लिए फायदेमंद हो सकता है। उदाहरण के लिए,
echo "export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\\"" >> .bashrc
यदि आप उस पद्धति का उपयोग करते हैं, तो सुनिश्चित करें कि आप उस उपयोगकर्ता की वर्तमान कार्यशील निर्देशिका में हैं जिसे आप इसके लिए संशोधित करना चाहते हैं। इसे जांचने के लिए आप "pwd" या वर्किंग डायरेक्टरी कमांड को प्रिंट कर सकते हैं।
यदि आपको "]" अंत ब्रैकेट और उपयोगकर्ता नाम के बीच अतिरिक्त स्थान पसंद नहीं है, तो उपयोगकर्ता इसे थोड़ा बहुत संशोधित रेगेक्स का उपयोग करें:
export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\\"
यदि आप सीधे फ़ाइल को संपादित कर रहे हैं तो इसका उपयोग करें।
अपने .bashrc
माध्यम से खोलें
vim ~/.bashrc
और फिर निम्नलिखित में जोड़ें .bashrc
:
#PS1="[\A \u@\h \W\a]$"
जहाँ \A
समय के लिए है ( \W
केवल पथ के अंत के लिए, यदि आप संपूर्ण वर्तमान निर्देशिका पथ चाहते हैं तो हटा दें)। फिर टाइप करें
source ~/.bashrc
आप कुछ इस तरह देखेंगे:
[16:04 trwood@cobalt04 ~/MCEq_dev]$
\W
से कोई रास्ता नहीं दिखाई देगा। \w
पूरा रास्ता देगा।
बस @ देवव 2 के उत्तर में जोड़ने के लिए:
एक आसान करने के लिए पढ़ा newbies के लिए गूंज आदेश होगा:
export PROMPT_COMMAND='echo -n "$(date +%H:%M:%S) "'
के बजाय
export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\ "
निर्यात के समय गूंज कमांड का मूल्यांकन नहीं किया जाता है, यह दोहरे उद्धरणों के बजाय शाब्दिक उद्धरण के लिए एकल उद्धरण का उपयोग करने के लिए अधिक समझ में आता है। पूरे कमांड को उद्धृत करने के लिए सिंगल कोट्स का उपयोग करना, फिर आपको इको कमांड में तर्क को उद्धृत करने के लिए दोहरे उद्धरण चिह्नों का उपयोग करने की अनुमति देता है , जैसे विशेष पात्रों से बचने की आवश्यकता को समाप्त करता है ,
[
और$
मुझे लगता है कि आगे बढ़ने का सही तरीका $HOME/.bashrc
उन कोडों का पता लगाना है , जो PS1
उन्हें टिप्पणी करते हैं और व्यक्तिगत जोड़ते हैं। यह उदाहरण के लिए मेरा ब्लॉक है:
PS1_DATE="\D{%Y-%m-%d %H:%M:%S}"
if [ "$color_prompt" = yes ]; then
PS1="[$PS1_DATE \[\e]0; \w\a\]${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\[\033[00m\]\[\033[01;34m\]\w \[\033[00m\]\$] "
#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ '
else
PS1='[$PS1_DATE ${debian_chroot:+($debian_chroot)}\w \$] '
#PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi
आउटपुट:
[2019-06-18 15:54:29 ~/Desktop $] echo "It's late!"
कमांड प्रॉम्प्ट में टाइमस्टैम्प दिखाने के लिए सबसे आसान सिंटैक्स शायद होगा:
PS1='\D{%F} \t $...'
कहाँ पे
\D{format}
दिनांक स्वरूपित है (देखें man bash
, प्रोम्प्टिंग अनुभाग) के रूप में
%F
पूरी तारीख; % Y-% m-% d (देखें man date
, FORMAT अनुभाग), और
\t
24-घंटे HH में वर्तमान समय है: MM: SS प्रारूप (देखें man bash
, जांच अनुभाग)
nano ~/.bashrc
जैसा कि ऊपर दिखाया गया है PS1 चर में परिवर्तन करें
source ~/.bashrc
मेरा समय cowsay
उपरोक्त उत्तर के समान है । आपको now
अपना डालना होगा ~/.bashrc
लेकिन आप इसे टर्मिनल से टाइप करके भी कह सकते हैं now
।
यहाँ एक स्क्रीनशॉट है:
बैश कोड को बहुत विस्तृत उत्तर में पोस्ट किया गया है:
export PROMPT_COMMAND="echo -n \[\$(date +%F-%T)\]\ "
export HISTTIMEFORMAT="%F-%T "
कम से कम मेरे लिए आसान लग रहा है।