বাশ ইতিহাসে টাইম স্ট্যাম্পগুলি কীভাবে দেখবেন?


259

বাশ ইতিহাস থেকে কমান্ডগুলি কার্যকর করা হয়েছিল এমন কোন সময়ে আমি দেখতে পাচ্ছি কি? আমরা অর্ডারটি দেখতে পারি তবে আমি কি সময় পেতে পারি এমন কোনও উপায় আছে?

নীচে-রেখা: বাশ ইতিহাসে মৃত্যুদন্ড কার্যকর করার সময়


7
ল্যাপটপগুলি লিনাক্স এবং বিএসডি উভয়ই ম্যানেজগুলিতে এটি কতটা দুর্বল নথিযুক্ত তা আমি অবাক হয়েছি।
শ্রীধর সারনোবাত

আউট এই ব্লগে পরীক্ষা করুন - sanctum.geek.nz/arabesque/better-bash-history
abhicantdraw

4
যদি আপনি zsh ব্যবহার করছেন:history -E
ওয়াহিদ

4
নিশ্চিত নয় কেন নীচের দুটি উত্তর আপনাকে কীভাবে টার্মিনাল খুলতে হবে তা বলার প্রয়োজন বোধ করে ..
mwfearnley

2
@ কুকুর 0 দ্বারা রেফারেন্স করা ব্লগ অনুসারে, HISTTIMEFORMATকমান্ড জারি করার সময় ভেরিয়েবল সেট না করা হলে টাইমস্ট্যাম্পস দৃশ্যত সংরক্ষণ করা যায় না । অন্য কথায়, আপনার যদি এটি সেট না করা থাকে, এখনই সেট করা আপনাকে পূর্বে জারি হওয়া কমান্ডগুলির টাইমস্ট্যাম্পগুলি পুনরুদ্ধার করতে সহায়তা করবে না।
টমিস্লাভ নাকিক-আলফায়ারভিক

উত্তর:


316

টার্মিনাল খোলার জন্য Ctrl+ Alt+ টিপুন T, তারপরে নীচের কমান্ডটি চালান:

HISTTIMEFORMAT="%d/%m/%y %T "

বা, বর্তমান ব্যবহারকারীর জন্য পরিবর্তন স্থায়ী করতে:

echo 'HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bashrc
source ~/.bashrc

তারপর

history

আরও তথ্যের জন্য ম্যান বাশ বা লিনাক্সের জন্য বাশ কমান্ড লাইনের একটি জেড সূচক দেখুন

আগে চালিত কমান্ডগুলির জন্য HISTTIMEFORMATসেট করা ছিল, বর্তমান সময়কে টাইমস্ট্যাম্প হিসাবে সংরক্ষণ করা হবে। HISTTIMEFORMATসেট হয়ে যাওয়ার পরে চালানো কমান্ডগুলির যথাযথ টাইমস্ট্যাম্প সংরক্ষণ করা হবে।


7
এটা দিয়ে কেন ঘোষণা exportমধ্যে .bash_profile? এটি কেবল একটি পাঠক দ্বারা পঠিত bash, এটি থেকে প্রবর্তিত আদেশ দ্বারা নয়, তাই এটি রফতানি করা উচিত নয়।
আলভারো গুতেরেজ পেরেজ 21

71
দ্রষ্টব্য যে এটি কেবল নতুন ইতিহাসের আইটেমগুলিরHISTTIMEFORMAT জন্য সেশনগুলির জন্য সেট করার পরে টাইমস্ট্যাম্পগুলি রেকর্ড করবে , অর্থাত আপনি এটিকে পূর্ববর্তী স্থানে ব্যবহার করতে পারবেন না। এখানে কিছু উত্তর ইতিহাসের কমান্ড অবিলম্বে টাইমস্ট্যাম্পড এন্ট্রিগুলি দেখায় এমন ধারণা দেয়
লুই ম্যাডডক্স

9
@ লুইস - আসলে কি এটি আমার পক্ষে প্রতিকূলভাবে কাজ করেছিল??!?!
স্টেফেন মিম

19
@ জামিল: আইএসও মান অনুসরণকারীদের জন্য, এটি তারিখের অংশের জন্য "% y-% m-% d";)
গৌথির

13
@Gauthier - আসলে, শুধুমাত্র% আইএসও তারিখ জন্য F ব্যবহার ;-) man7.org/linux/man-pages/man3/strftime.3.html
brianmearns

73

টার্মিনাল খুলুন Ctrl+ Alt+ Tএবং চালান,

HISTTIMEFORMAT="%d/%m/%y %T "

তারপর,

history

পরিবর্তনগুলি স্থায়ী করতে নীচের পদক্ষেপগুলি অনুসরণ করুন,

gedit ~/.bashrc

আপনাকে .bashrc ফাইলটিতে নীচের লাইনটি যুক্ত করতে হবে এবং তারপরে এটি সংরক্ষণ করতে হবে,

export HISTTIMEFORMAT="%d/%m/%y %T "

উত্স .brcrc ফাইলের জন্য নীচের কমান্ডটি চালান,

source ~/.bashrc

তার পরে রান historyকমান্ড।

এখানে চিত্র বর্ণনা লিখুন

উত্স : http://www.cyberciti.biz/faq/unix-linux-bash-history-display-date-time/


উত্তর দেওয়ার জন্য ধন্যবাদ, it এটি কি স্থায়ী পরিবর্তন হবে?
rʒɑdʒɑ

1
আরে, আমি এটি ওএস এক্স এবং উইন্ডোজ (এমিংডাব্লুয়ের মাধ্যমে) এ করছি, এবং আমি এটি .bash_profile এ যুক্ত করছি, প্রোফাইল এবং আরসির মধ্যে পার্থক্য কী?
লাসাগাআন্ড্রয়েড

18

হ্যাঁ, আপনি পারেন: আপনি সেট করলে $HISTTIMEFORMAT, .bash-historyসঠিকভাবে টাইমস্ট্যাম্প করা হবে। এটি বিদ্যমান .bash-historyসামগ্রীতে সহায়তা করে না , তবে ভবিষ্যতে সহায়তা করবে।


1
আপনি আরও স্পষ্টতা জন্য এটি প্রসারিত করতে পারেন?
rʒɑdʒɑ

5
পূর্ববর্তী পোস্টে সংশোধন: HISTTIMEFORMAT সেট করা টাইমস্ট্যাম্পগুলির প্রদর্শন সক্ষম করে ... এমনকি বিদ্যমান। আমার প্রিয়: হিস্টটাইমফর্ম্যাট = '% এফ% টি' এটি গুরুত্বপূর্ণ কারণ আপনি কোন দেশের বাস করছেন তা নয় ... সকলেই তাত্ক্ষণিকভাবে জানেন যে এটি কোন সময়। :)

4
আমি IST হিস্টটাইমফর্ম্যাট সেট করেছি এবং এই সেটটির আদেশের আগেও আমি আজকের জন্য সময় পেয়েছি।
ইয়াসিন ওকুমুş

@ user491029 "... এমনকি বিদ্যমান"। এটি সত্য, তবে বিভ্রান্তিকর। উবুন্টু ১৪.০৪-তে, অন্ততপক্ষে, আমি একবার হিস্টটাইমফর্মটি সেট করে নিলে এটি সমস্ত ইতিহাস এন্ট্রিগুলির টাইমস্ট্যাম্পগুলি দেখাতে শুরু করেছিল, তবে বর্তমান সেশনের আগে যে কোনও কমান্ড চালানোর টাইমস্ট্যাম্পগুলি বর্তমান সেশনের লগইন টাইমস্ট্যাম্প ছিল বলে মনে হয়।
জববিনস

1

আপনি পরবর্তী লগইন পরিবর্তন দেখতে পাবেন।

echo 'HISTTIMEFORMAT="%d/%m/%y %T "' >> ~/.bashrc

0

সমস্ত ব্যবহারকারীর জন্য ইতিহাসের টাইমস্ট্যাম্পগুলি সক্ষম করতে /etc/profile.d তে একটি স্ক্রিপ্ট তৈরি করুন:

echo 'HISTTIMEFORMAT="%Y%m%d %T "' >> /etc/profile.d/timestamp.sh

1
এটি সম্ভবত জিইউআইয়ের মাধ্যমে লগ ইন করা ব্যবহারকারীদের পক্ষে কাজ করবে না, যেহেতু ডিফল্ট টার্মিনালটি লগইন শেলগুলি চালায় না। /etc/bash.bashrcএকটি ভাল জায়গা হবে।
মারু

0

আমি জানি, আমি খুব দেরিতে এর উত্তর দিচ্ছি, তবে সমস্ত ব্যবহারকারীর জন্য এটি করতে আপনি যে কোনও .shফাইল তৈরি করতে /etc/profile.dএবং এতে নীচের লাইনটি যুক্ত করতে পারেন:

echo 'HISTTIMEFORMAT="%Y-%m-%d %T "' >> /etc/profile.d/existing-foo-file.sh

আপনি যদি rootসুপারভাইজার হিসাবে লগইন না করে থাকেন তবে আপনার এটি করতে teeকমান্ডটি ব্যবহার করতে হবে:

echo 'HISTTIMEFORMAT="%Y-%m-%d %T "' | sudo tee /etc/profile.d/mytimestamp.sh

আপনি যদি কোনও বিদ্যমান ফাইলে সংযোজন করতে চান তবে -aপতাকাটি teeকমান্ডে প্রেরণ করুন :

echo 'HISTTIMEFORMAT="%Y-%m-%d %T "' | sudo tee -a /etc/profile.d/mytimestamp.sh

এখানে চিত্র বর্ণনা লিখুন


হ্যালো শশাঙ্ক, উত্তর যুক্ত করার জন্য ধন্যবাদ তবে এই উত্তরটি অন্যদের থেকে কীভাবে আলাদা? যদি আপনার উত্তরটি সম্পূর্ণ আলাদা হয় তবে আমরা এটি পেয়ে আনন্দিত, তবে তা না হলে আপনি বিদ্যমান উত্তরগুলি উন্নত করতে পারেন।
রোড

হাই, মন্তব্য করার জন্য ধন্যবাদ। এটি নিম্নলিখিত উপায়ে অন্যদের থেকে পৃথক: ১. তাদের মধ্যে কয়েকটি ব্যবহারকারীর জন্য তৈরি সম্পর্কে উল্লেখ করেছেন তবে কোনও ফাইলের নাম তৈরি / ব্যাখ্যা করার বিষয়ে কেউ উল্লেখ করেনি /etc/profile.dtimestamp.shপ্রযুক্তিগতের খুব কাছাকাছি দেখায় (সুতরাং এটি বিভ্রান্তি সৃষ্টি করে) তাই আমি নামটি ব্যবহার করেছি existing-foo-file.sh(ফু-বার ধারণা)। ২. এটি অ-রুট ব্যবহারকারীদের সাথে ব্যবহারের কথা কেউ উল্লেখ করেনি। তাই আমি ব্যবহারের একটি উদাহরণ দিয়েছি sudo। ৩. তৃতীয় উদাহরণটি বিদ্যমান ফাইলে সংযোজনের দ্বিতীয় উদাহরণকে উন্নত করে। যেহেতু লিনাক্স / ইউনিক্স প্রবর্তকরা এই সমস্যাটিকে আঘাত করতে পারে, তাই আমি বিশদভাবে জানিয়েছি।
শশাঙ্ক অগ্রওয়াল
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.