.bashrc বিভিন্ন ফাইল থেকে এলিয়াস লোড হচ্ছে


11

আমার কাছে একটি .bashrc ফাইল রয়েছে, যা আমি সেটআপ করতে চাই যাতে এটি একটি .aliases ফাইলের এলিয়াসগুলি পড়ে এবং সেগুলি সেট আপ করে।

বর্তমানে আমার আছে:

# User specific aliases and functions
while read alias_line
do
        echo `alias ${alias_line}`
done < .aliases

তবে লগইন করার পরে আমি পেয়েছি:

-বাশ: ওরফে: -ফু: পাওয়া যায়নি -বাশ: ওরফে: $ ব্যবহারকারী ": পাওয়া যায় নি

-বাশ: ওরফে: -লার্ট ": পাওয়া যায় নি

.Aliases ফাইলটি এরকম:

PSu = "PS -fu $ ব্যবহারকারী" ll = "ls -lart"
পিকো = 'ন্যানো'

উত্তর:


13

আপনি যখন ব্যবহার করবেন তখন alias ${alias_line}ভেরিয়েবলটি উদ্ধৃত বিধিগুলিকে উপেক্ষা করে স্পেসে বিচ্ছিন্ন হয়ে যাবে ।

এটি ঠিক করার জন্য দুটি উপায় রয়েছে:

  • ওরফে ফাইল থেকে সমস্ত উদ্ধৃতি সরান:

    ll=ls -lart
    psu=ps -fu $USER

    এবং পরিবর্তনশীল নিজেই উদ্ধৃতিতে রাখুন:

    alias "$alias_line"

    এটি কাজ করে কারণ ব্যাশে, ll="ls -lart"এবং "ll=ls -lart"হুবহু সমতুল্য।

  • বিকল্পভাবে (এটি একটি ভাল এবং আরও সাধারণ উপায়), aliasকমান্ড সহ একটি ফাইল রাখুন এবং এটি আমদানি করার জন্য .বিল্টিন (ওরফে source) ব্যবহার করুন ।

    alias pico='nano'
    alias psu='ps x'
    alias ll='ls -lart'

    তারপরে আপনার ~/.bashrc:

    . ~/.aliases

দ্বিতীয় পদ্ধতিটি আরও ভাল , যেহেতু এটি আপনাকে এলিয়াসগুলির মধ্যে সীমাবদ্ধ করে না, তবে সংজ্ঞায়িত ফাংশনগুলিকেও মঞ্জুরি দেয় যা অনেক বেশি শক্তিশালী।


সেটা ঠিক. এটি একটি সম্পূর্ণ ভুল পদ্ধতির ছিল। আমি নিজে এই কমান্ডগুলি ব্যবহার করে করেছি: লাইনের পাঠের সময়; প্রতিধ্বনি "ওরফে $ লাইন" >> .aliases_full; সম্পন্ন <.আলিয়াস আমি তখন কেবল এমভি .aliases_ful .aliases করেছি। ./.aliases #in .bashrc ধন্যবাদ যাহাই হউক না কেন :)
ভ্লাদিমির
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.