ওএস এক্স-এ .bash_history এ সংরক্ষণ না করে একটি টার্মিনাল কমান্ড কার্যকর করুন?


19

এই সাইটটি বলেছে যে লিনাক্সে আপনি spaceটার্মিনাল কমান্ডের বাইরে এড়াতে একটি যুক্ত করতে পারেন .bash_history।

এটি ম্যাক ওএস এক্স এর জন্য কাজ করে বলে মনে হচ্ছে না anyone ইতিহাসের মধ্যে সংরক্ষণ না করে কেউ কি টার্মিনালটিতে একটি কমান্ড কার্যকর করার কোনও উপায় জানেন?

আমি ইতিহাস সাফ করতে চাই না।

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


টার্মিনাল কমান্ডের আগে একটি `` (স্পেস) যুক্ত করা ইতিহাসের বাইরে রাখবে না
— ওয়ারেন

2
@ ওয়ারেন না, এটা করে আপনাকে কেবল ব্যাশে বৈশিষ্ট্যটি সক্ষম করতে হবে।
— গোভিয়ন

@firebat - ডান কিন্তু যেহেতু এটি কিছু তুমি আছে সক্ষম করতে, এটি বা কাজ নাও করতে পারে পারে সর্বত্র :)
— ওয়ারেন

উত্তর:


24

নিম্নলিখিত লাইনটি ~ / .bashrc এ যুক্ত করুন

export HISTCONTROL=ignorespace

তারপরে source ~/.bashrcসেটিংসটি রিফ্রেশ করুন

এটি ব্যাশে সেই বৈশিষ্ট্যটি সক্ষম করে। যদি এটি কাজ না করে, আপনাকে এটি লিনাক্সের চেয়ে ওএস এক্সের চেয়ে কিছুটা আলাদাভাবে লোড করার কারণে আপনাকে এটি ~ / .bashrc এর পরিবর্তে ~ / .bash_profile এ যুক্ত করতে হবে।


এর সাথে আমি কীভাবে দুটি বিকল্প ব্যবহার করতে পারি? আমি ব্যবহার করতে চাই export HISTCONTROL=erasedups,ignorespaceতবে আমার মনে হয় সিনট্যাক্সটি কার্যকর হয় না ...
— সিডব্লিউড

2
export HISTCONTROL=erasedups:ignorespace
— গোভিয়ন

2
তবে আমি মনে করি এটি আসলেexport HISTCONTROL=ignoredups:ignorespace
— goweon

3
"উপেক্ষা" সেটিংস পুনরাবৃত্ত লাইন উপেক্ষা করে। পরপর বিশ বার "ls" টাইপ করা কেবল ইতিহাসের মধ্যে একটিতে শেষ হয়। তবে, "ls" টাইপ করুন এবং তারপরে "PS" এবং তারপরে "ls" আবার "ls" এবং "PS" প্রতিবার সঞ্চয় করে রাখবেন - যদি আপনার বাশ 3 না থাকে এবং "ইরেসডআপস" সেট না করে। যদি এটি সেট করা থাকে তবে কোনও নকলই বাশ ইতিহাসে মোটেই প্রবেশ করবে না। - cyberciti.biz/faq/bash-for-loop-array
— cwd

1
এটি আমার পক্ষে কাজ করে না। আমি উভয় চেষ্টা করেছি export HISTCONTROL=erasedups:ignorespace এবং export HISTCONTROL=ignoredups:ignorespaceএমনকি export HISTCONTROL=ignoredups:ignoreboth। কিন্তু কি আমি পেতে প্রতিটি জন্য একটি একক এন্ট্রি অধিবেশন যদি কমান্ড ইতিমধ্যে আছে, অর্থাত: বরং জুড়ে সেশন চেয়ে .bash_history, একটি সেশন শুরুতে, আর আমি আবার টাইপ করা হচ্ছে এটা (যদিও শুধু তাই সেশনের জন্য একবার) ইতিহাস যোগ করা হবে । আমি কীভাবে নিশ্চিত করব যে আমি যখন টার্মিনাল চালু করব তখনই already .Bash_history এ থাকা কমান্ডটি আবার প্রবেশ না করা যুক্ত না হলে?
— ওরোম

1

আপনি যদি সেশনটি সচল রাখার বিষয়ে উদ্বিগ্ন না হন তবে এটি কাজ করতে পারে:

kill -9 $$

এটি লগ-আউট করার পরিবর্তে বর্তমান অধিবেশনটিকে হত্যা করবে, যার [তাত্ত্বিকভাবে] অর্থ আপনার ইতিহাস সংরক্ষণ করা হবে না।

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