আমি জানতে চেয়েছিলাম যে কোনও কমান্ড বা অন্য কোনও উপায় আছে কিনা আমি কেবল বর্তমান অধিবেশনে আমার কমান্ডের ইতিহাস পরীক্ষা করতে পারি।
আমি জানতে চেয়েছিলাম যে কোনও কমান্ড বা অন্য কোনও উপায় আছে কিনা আমি কেবল বর্তমান অধিবেশনে আমার কমান্ডের ইতিহাস পরীক্ষা করতে পারি।
উত্তর:
historyবিল্ট ইন bashপারবেন ফাইলের নামের উল্লেখ যখন সঙ্গে ব্যবহার -anrwপতাকা, এবং -aথেকে পতাকা বিবরণ help historyবলে:
এই সেশন থেকে ইতিহাসের ফাইলে ইতিহাসের লাইন যুক্ত করুন
অতএব, আমরা করতে পারি:
~$ history -a this_session.history
~$ cat ./this_session.history
history mysession.history
cat mysession.history
clear
history -a this_session.history
রেকর্ডের জন্য, -w(ওপেন ফাইলটি লেখার ইতিহাস) নির্দিষ্ট ফাইলে পুরো ইতিহাস লেখায় , সুতরাং -a(সংযোজন) এখানে পছন্দসই পছন্দ।
অন্যান্য ম্যানুয়াল উপায় আছে। বিশেষ করে kshনেই -aপতাকা bashআছে, কিন্তু কি ksh এবং mkshআছে হল HISTFILE(এবং এনভায়রনমেন্ট ভেরিয়েবল bashকারণ, খুব যে আছে, bashঅন্তর্ভুক্ত প্রচুর kshবৈশিষ্ট্য); যাইহোক, ডিফল্টরূপে এই পরিবর্তনশীল সেট করা নেই (কমপক্ষে mkshউবুন্টু এটি সেট করে নি)। সুতরাং, বর্তমান সেশনটিকে অন্য ফাইলে আউটপুট দেওয়ার জন্য, আমরা HISTFILEপ্রিপেন্ডকে কমান্ড বলি যার শেল সিনট্যাক্সের অর্থ আপনার দ্বারা নির্দিষ্ট অতিরিক্ত পরিবেশের চলক সহ কমান্ড চলমান। তাই ভালো:
bash-4.4$ HISTFILE='mykshfile.hist' ksh
$ echo 'Hello'
Hello
$ echo 'World'
World
$
bash-4.4$ cat ./mykshfile.hist
�echo 'Hello'
echo 'World'
আপনি এটি থেকে যা দেখতে পাচ্ছেন তা হ'ল kshএটির সাথে সম্পর্কিত শেলগুলি বিশেষ অক্ষরগুলির সাথে আউটপুট ইতিহাস দেয়, যা সরল পাঠ্যের পরিবর্তে bashহয়। সুতরাং, আপনি ফাইলটি খুলতে চাইতে পারেন ksh।
উবুন্টুতে পসিক্স /bin/shশেল যতটা দেবি অ্যালকুইস্ট শেল বা ড্যাশ, সেখানে fcঅন্তর্নির্মিত উপস্থিত রয়েছে । যাইহোক, উবুন্টু ড্যাশ উপর ছাড়া liberal এর সংক্ষিপ্ত রূপ-সম্পাদনা কম্পাইল করা হয় , যার ফলে কর্মক্ষমতা কারণে উবুন্টু ডেভেলপারদের দ্বারা একটি সচেতন পছন্দ, তাই fcএবং অন্যান্য মোড যে লাইন সম্পাদনা প্রয়োজন বাক্সের বাইরে কাজ করে না (যদি না কম্পাইল dashনিজেকে এবং ইনস্টল lib-edit)।
শেল নিরপেক্ষ উপায়গুলি হ'ল বিদ্যমান সরঞ্জামগুলির সাথে আপনার সেশনটি রেকর্ড করা বা প্রতি-আদেশের ভিত্তিতে রেকর্ড করার জন্য আপনার নিজের ফাংশনটি লিখতে হবে।