আমি ভাবছিলাম যে টার্মিনাল প্রম্পটে টাইমস্ট্যাম্প যুক্ত করা সম্ভব ছিল এবং যদি তা হয় তবে আমি কীভাবে এটি অর্জন করতে পারি?
আমি ভাবছিলাম যে টার্মিনাল প্রম্পটে টাইমস্ট্যাম্প যুক্ত করা সম্ভব ছিল এবং যদি তা হয় তবে আমি কীভাবে এটি অর্জন করতে পারি?
উত্তর:
এই লাইনটি ~/.bashrc
ফাইলটিতে যুক্ত করুন:
export PROMPT_COMMAND="echo -n \[\$(date +%H:%M:%S)\]\ "
সুতরাং আউটপুট কিছু হবে:
[07:00:31] user@name:~$
date
কমান্ড, আপনি প্রতিস্থাপন করতে পারেন +%H:%M:%S
সঙ্গে +%T
।
আমার সমাধানটি ছিল .bashrc এ দেওয়ার জন্য এই PS1 লাইনটি তৈরি করতে http://bashrcgenerator.com/ ব্যবহার করা:
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 এর সাথে সম্পন্ন হতে পারে, সম্ভবত [$ (টিপুট এসজিআর0)] অংশটি ব্যবহার করে, তবে পিএস 1 কাজ করে।
প্রম্পটে নিজেই তারিখটি যুক্ত করার পরিবর্তে, নীচের লাইনটি আপনার উপরে রেখে আপনার প্রম্পটের ঠিক আগে আপনি তারিখটি যুক্ত করতে পারেন । এটি কাজের জন্য আপনাকে ইনস্টল করতে হবে । একটি সংক্ষিপ্ত প্রম্পট রাখার সময় তারিখটি প্রদর্শনের এটি একটি মজাদার উপায় :.bashrc
cowsay
cowsay "Welcome $USER! It's now $(date '+%A %B %d %Y %r')"
তার বর্তমান ফর্ম এটা সংশোধনী ছাড়া কারো সিস্টেমে কাজ করবে যেমন লেখা আছে $USER
এবং date
বর্তমান পরিবেশ থেকে পরিবর্তনশীল।
যেহেতু আমার কাছে এটির উন্নতি করার জন্য উত্তরে একটি মন্তব্য যুক্ত করার মতো পর্যাপ্ত খ্যাতি পয়েন্ট নেই। দেখে মনে হবে যে আমি যুক্ত করার একমাত্র উপায় হ'ল দ্বিতীয় উত্তর তৈরি করা। সুতরাং, আমি উত্তর হিসাবে যা বলেছিল তার পুনরাবৃত্তি করব এবং এটির উপরে তৈরি করব।
আপনি যে তারিখের স্ট্যাম্পটি সংশোধন করতে চান তার জন্য .bashrc ফাইলটি সম্পাদনা করুন Edit
যদি আপনি "ব্যবহারকারী @ হোস্ট: ~ $" দেখেন তবে আপনি আপনার বর্তমান ব্যবহারকারীর হোম ডিরেক্টরিতে রয়েছেন। .Bashrc ফাইলটি একটি গোপন ফাইল, যেহেতু এটি বিন্দুর সাথে পূর্বনির্ধারিত। এটি একটি তালিকায় দেখতে আপনার একটি দীর্ঘ তালিকা ব্যবহার করতে হবে।
আপনি "ls -a" ব্যবহার করতে পারেন এবং তারপরে ".bashrc" ফাইলটি দেখা উচিত।
একটি পাঠ্য সম্পাদক দিয়ে ফাইলটি সম্পাদনা করুন। এক্সম্যাপল এর জন্য, "ন্যানো .বাশ্রাক", "ভিএম .বাশার্ক", "ভিআই .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
পুরো পথ দেবে।
কেবলমাত্র @ devav2 এর উত্তরে যুক্ত করতে:
নববিদের জন্য সহজেই পঠনযোগ্য ইকো কমান্ডটি হ'ল:
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
, ফর্ম্যাট বিভাগ) এর মতো এবং
\t
24 ঘন্টা এইচএইচ: এমএম: এসএস ফর্ম্যাটটিতে বর্তমান সময় (দেখুন man bash
, বিভাগটি দেখুন)
nano ~/.bashrc
উপরের মত PS1 ভেরিয়েবলে পরিবর্তন করুন
source ~/.bashrc
আমার সময় cowsay
উপরের উত্তর অনুরূপ । now
আপনার নিজের লাগাতে হবে ~/.bashrc
তবে টাইপ করে আপনি টার্মিনাল থেকে কল করতে পারেন now
।
এখানে একটি স্ক্রিনশট:
ব্যাশ কোডটি এই খুব বিস্তারিত উত্তরে পোস্ট করা হয়েছে:
export PROMPT_COMMAND="echo -n \[\$(date +%F-%T)\]\ "
export HISTTIMEFORMAT="%F-%T "
অন্তত আমার জন্য সুবিধাজনক দেখায়।