উপাধি: .বাশ_সিআরসি


9

টার্মিনালের সাথে চারপাশে খেলতে, আমি লক্ষ্য করেছি যে স্থায়ী নামকরণের জন্য অনেকগুলি উপায় রয়েছে ।

আমি লিনাক্স নবাগত এবং আমি যা জানি তা থেকে:

  1. sudo ln -s /path/to/executable /usr/local/bin/desired_alias
  2. যোগ desired_alias = '/path/to/executable'করা~/.bashrc
  3. এই লাইনগুলিকে সংঘাতহীন ~/.bashrc:

    if [ -f ~/.bash_aliases ]; then
        . ~/.bash_aliases
    fi
    

    এবং নির্বাণ desired_alias = '/path/to/executable'মধ্যে~/.bash_aliases

সবার একই প্রভাব রয়েছে।

প্রথম এবং দ্বিতীয় পদ্ধতির মধ্যে পার্থক্য কী?

উত্তর:


10

প্রথম পদ্ধতির সাহায্যে আপনি কোনও উপাধ তৈরি করছেন না, আপনি একটি সিমিলিংক তৈরি করছেন। প্রতীকী লিঙ্কগুলির জন্য সিমলিংকগুলি সংক্ষিপ্ত:

সিম্বলিক লিঙ্কগুলি এমন ফাইল যা অন্য ফাইলগুলিতে পয়েন্টার হিসাবে কাজ করে। [...] একটি প্রতীকী লিঙ্ক হল একটি বিশেষ ধরণের ফাইল যার বিষয়বস্তুগুলি একটি স্ট্রিং যা পথের নাম অন্য ফাইল, লিঙ্কটি যে ফাইলটিকে বোঝায়। অন্য কথায়, একটি প্রতীকী লিঙ্কটি অন্য নামের দিকে নির্দেশক, এবং অন্তর্নিহিত কোনও অবজেক্টের নয়।

এখানে এবং এখানে সিমলিংকগুলি সম্পর্কে আরও পড়ুন ।

কেবলমাত্র দ্বিতীয় পদ্ধতির সাহায্যে আপনি আসলে একটি উপাধি তৈরি করছেন।

যখন সরল কমান্ডের প্রথম শব্দ হিসাবে ব্যবহৃত হয় তখন এলিয়াসগুলি কোনও শব্দের পরিবর্তে স্ট্রিং স্থাপন করতে দেয়। শেলটি এলিয়াসগুলির একটি তালিকা বজায় রেখেছে যা সেট এবং সেট করা যেতে পারে এবং উপ নাম এবং ইউনিালিয়াস অন্তর্নির্মিত কমান্ডগুলি সহ সেট করা যাবে না (নীচে নীচে শেল বিল্টিন কম্যান্ডগুলি দেখুন)। প্রতিটি সাধারণ কমান্ডের প্রথম শব্দ, যদি উদ্ধৃত না হয়, এটির একটি উলাম আছে কিনা তা পরীক্ষা করা হয়। যদি তা হয় তবে সেই শব্দটি ওরফে পাঠ্য দ্বারা প্রতিস্থাপিত হবে।

আপনি যে কোনও জায়গাতেই একটি কমান্ড টাইপ করতে পারেন এবং শেলটি ( এই ক্ষেত্রে ব্যাশ করতে পারেন ) এটির ব্যাখ্যা দিতে পারেন, তবে অন্যান্য শেলগুলিতে উপনামটি উপলব্ধ হওয়ার জন্য শেল দ্বারা ব্যাখ্যা করা কোনও ফাইলের মধ্যে এটি সংজ্ঞায়িত করা দরকার স্টার্টআপে (শেল স্টার্টআপ, কম্পিউটার স্টার্টআপ নয়)

বাশের জন্য এগুলি /etc/bash.bashrc(সিস্টেম ওয়াইড) এবং ~/.bashrc। যখন শেলটি ইন্টারেক্টিভ মোডে শুরু হয় (যেমন ব্যবহার করার সময় Terminal) তখন এই ফাইলগুলি ব্যাখ্যা করা হয় । আমি প্রোফাইল ফাইলগুলি উল্লেখ করতে যাচ্ছি না কারণ তারা একটি ভিন্ন উদ্দেশ্য করে।

সুতরাং, আপনি আপনার এলিয়াসগুলি ~/.bashrcপ্রতিটি ইন্টারেক্টিভ শেলটিতে উপলভ্য করতে যোগ করতে চান ।

.bash_aliasesপদ্ধতি accomplishes ঠিক মধ্যে alias লেখা নির্বাণ একই জিনিস ~/.bashrcকিন্তু সহজ পার্স এবং প্রোগ্রাম দ্বারা কাজে ব্যবহৃত হতে পারে হওয়ার সুবিধা হয়েছে।

. ~/.bash_aliasesমানে উৎস (লোড) _~/.bash_aliases_বর্তমানে চলমান শেল প্রেক্ষাপটে।


@ লিলো আপনি আমাকে টিউটোরিয়ালে মারলেন! +1
myusuf3

@ জিসি আমি বস্তাটি মারছি তাই বুনো :)
লি লো

@ লিলো হাহাহাহা :)
myusuf3

1
আপনি ভাবতে পারেন এটি একইভাবে কাজ করছে, তবে তা হয়নি। দয়া করে আমি আমার উত্তরে উল্লেখ করা সিমলিংকে থাকা সামগ্রীগুলি পড়ুন। সিমিলিংক এবং উপকরণগুলি বিভিন্ন উদ্দেশ্যে পরিবেশন করে এবং বিভিন্ন উদ্দেশ্যে মাথায় রেখে তৈরি করা হয়েছিল। আপনাকে উদাহরণ দেওয়ার জন্য যে সিমলিংকগুলি এলিয়াসগুলির মতো কাজ করে না সেগুলি ব্যবহার করে দেখুন - একটি এলিফ সংজ্ঞায়িত করুন: ওরফে পিএক্স = "পিএস অ্যাকু"। এখন সিমলিঙ্কগুলি দিয়ে এটি সম্পাদন করার চেষ্টা করুন।
লি লো

1
@ লি লো: আমি সিনলিংক এবং / ইউএসআর / লোকাল / বিনের মধ্যে পার্থক্য বুঝতে পেরেছি, তবে আমার প্রশ্ন (এটি সাধারণ প্রশ্নের সাথে সামান্য কিছুটা অফ-টপিক হতে পারে) হ'ল: এক্সট্ল্টি / ইউএসআর / লোকাল / বিন কোনটির জন্য ব্যবহৃত হয়?
স্ট্রে
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.