কমান্ড লাইনের মাধ্যমে কীভাবে b .bash_history` ফাইলটি দেখতে পাবেন?


72

আমি আমার .bash_historyফাইলের বিষয়বস্তু দেখতে চাই তবে কমান্ড লাইনের মাধ্যমে কীভাবে সেখানে যেতে হবে তা জানি না।


7
কীভাবেhistory | less
ম্যাডমাইক

2
আপনি পরীক্ষা করেছেন /home/username/.bash_history ?
মিচ

2
NB: .bash_historyকেবলমাত্র যখন টার্মিনালটি বন্ধ থাকে তখন যুক্ত করা হয়।
নিকোলাস ভার্হেলস্ট

উত্তর:


56

আপনি প্রকৃত ফাইল নিজেই অ্যাক্সেস করতে চান তাহলে, শুধু আপনার পছন্দের টেক্সট এডিটর ব্যবহার করুন (আমি ব্যবহার emacsকিন্তু আপনি ব্যবহার করতে পারেন plumaএর geditবা vimবা যাই হোক না কেন):

emacs ~/.bash_history

যদি আপনার ইতিহাস ফাইল হয় তবে এটি ডিফল্ট অবস্থান। যদি আপনি সেখানে কিছু না পান তবে আপনি ইতিহাসের ফাইলটির নাম পরিবর্তন করতে পারেন। এটি $HISTFILEভেরিয়েবলে সংরক্ষণ করা হয়েছে , সুতরাং এর বর্তমান মানটি পরীক্ষা করতে এটি মুদ্রণ করুন:

echo $HISTFILE

যদি ফাইলটির পরিবর্তে আপনি কেবল নিজের ইতিহাস দেখতে চান তবে আপনি history@ মাইনার0029 এর পরামর্শ অনুসারে চলতে পারেন । কোনও বিকল্প নেই কমান্ডটি কেবলhistory আপনার $HISTFILEশেলটিতে সম্পাদিত কমান্ডগুলি অনুসরণ করবে যা লাইন সংখ্যা সহ সেই ফাইলটিতে এখনও লেখা হয়নি।


49

আপনার যদি আসলে ফাইলটির আউটপুট প্রয়োজন হয় তবে নীচের সমস্ত কমান্ডের সাথে .bash_historyপ্রতিস্থাপন করুন ।history
cat ~/.bash_history

আপনি যদি সামনে নম্বর ছাড়াই কমান্ডগুলি চান, তবে এই আদেশটি পরিবর্তে ব্যবহার করুন history:

history | cut -d' ' -f 4-

অন্যথায়, কোনও পার্থক্য থাকবে না (আপনি যদি আলাদা শেল ব্যবহার করেন তবে)।


শেষ 15 কমান্ড

তুমি ব্যবহার করতে পার

history | tail -n 15

শেষ সম্পাদিত সর্বশেষে (নীচে) মুদ্রিত আপনার ইতিহাসের শেষ 15 লাইনগুলি পেতে।


একটি আদেশ সন্ধান করা হচ্ছে

বিকল্পভাবে, ব্যবহার করুন

history | grep "apt-get" | tail -n 15

সর্বশেষ 15 কমান্ডগুলি পেতে যা apt-getসর্বশেষে সম্পাদিত সর্বশেষে (নীচে) প্রিন্ট করা হয়েছে। আপনি যে apt-getকোনও কমান্ড (বা কমান্ড আর্গুমেন্ট) অনুসন্ধান করতে চান তা প্রতিস্থাপন করতে পারেন (এটি একটি নিয়মিত প্রকাশ হতে পারে)।


ইতিহাসের মাধ্যমে স্ক্রোলিং

তুমি ব্যবহার করতে পার

history | tac | less

উপরের সর্বাধিক সাম্প্রতিক দিয়ে আরম্ভ করা সমস্ত কমান্ডের মাধ্যমে স্ক্রোল করতে । qপ্রস্থান করতে টিপুন ।

একইভাবে, ব্যবহার করুন

history | grep "apt-get" | tac | less

উপরের সর্বাধিক সাম্প্রতিকটি দিয়ে শুরু করে ("আর্গুমেন্ট সহ)" এর সাথে সম্পাদিত সমস্ত কমান্ডের মাধ্যমে স্ক্রোল করতে apt-getqপ্রস্থান করতে টিপুন ।


15

Minerz029 এর দুর্দান্ত উত্তর ছাড়াও।

পুনরাবৃত্তি করতে - 'ইতিহাস' কমান্ডটি তার পাশের সংখ্যার সাথে ইতিহাস মুদ্রণ করে।

আপনি ইতিহাসের আউটপুটটিকে গ্রেপ, কম ইত্যাদিতে পাইপ করতে পারেন

ইতিহাসের আউটপুট আউটপুটটির পাশের বাম দিকে একটি সংখ্যাও দেখায়। যেমন

  469  free
  470  ps -fA
  471  ps -fA | grep xend
  472  free
  473  sudo vi /etc/xen/xend-config.sxp 
  474  cat /etc/default/grub 

এই নম্বরটি দিয়ে আপনি কমান্ডটি পুনরায় চালাতে পারেন।

উদাহরণস্বরূপ, 473 পুনরায় চালাতে আমি টার্মিনালে টাইপ করব

 admin@xen1~$ !473

ইতিহাসের আউটপুটে 473 এর পরবর্তী কমান্ডটি পুনরাবৃত্তি করতে প্রবেশ কী দ্বারা অনুসরণ করা হবে।

আপনি কী লিখে টাইপ করে কমান্ডের ইতিহাসে ইন্টারেক্টিভ পেছনের দিকে অনুসন্ধান করতে পারেন ctrl + rতারপরে কমান্ডের কিছু বিষয়বস্তু লিখতে শুরু করুন এবং এটি অনুসন্ধান করে এটি পূরণ করবে। আপনি যখন এটি পেয়েছেন তবে পুনরাবৃত্তি করার জন্য আপনি এন্টারটি টাইপ করতে পারেন বা [tab]কমান্ড লাইনে এটি অনুলিপি করতে প্রথমে কমান্ডটি সম্পাদনা করতে টিপুন ।

অবশ্যই, শেষ দুটি বিকল্পগুলি ব্যাশ শেলের সাথে কাজ করে। এই বৈশিষ্ট্যগুলি অন্যান্য শেলগুলিতে কাজ করে কিনা তা আমি নিশ্চিত নই। তবে বাশ যেহেতু উবুন্টু ডিফল্ট শেল তাই আপনার এটি সেখানে পাওয়া উচিত।


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.