.bashrc ফাইলে সংজ্ঞায়িত উপনামের নামগুলি কেন কাজ করছে না?


12

আমি নীচের মত .bashrc ফাইলে উপনামের নাম দিয়েছি। তবে উপনামের নাম কাজ করছে না। কেন?

alias c='clear'
alias l='ls -lt'
alias h='history'
alias d='ls -lt |grep "^d"'

export ORACLE_HOME=/ora11gr2/app/oracle/product/11.2.0/db2
export ORACLE_LIB=/ora11gr2/app/oracle/product/11.2.0/db2/lib
export PATH=$ORACLE_HOME/bin:/usr/vac/bin:/usr/vacpp/bin:.    
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:.

2
আপনি কি বলছেন যে আপনি এনভায়রনমেন্ট ভেরিয়েবলগুলি পেয়েছেন তবে এলিয়াসগুলি নয়, আপনি এর কোনও কিছুই পান না?
পল

1
একটি পৃথক সমস্যা হতে পারে, তবে আপনি আপনার পথটি মুছে ফেলবেন। আপনার যেকোন সেটিংসে আপনার পুরানো PATH উল্লেখ করা উচিত, যেমনexport PATH=$PATH:$ORACLE_HOME/bin:/usr/vac/bin:/usr/vacpp/bin:. export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
ধনী হোমোলকা

উত্তর:


29

আপনার .bashrcফাইলটি পরিবর্তন করার পরে আপনি কি এটি উত্স করেছেন? চেষ্টা করুন:

. ~/.bashrc

তারপরে আপনার শেলের পরিবর্তনগুলি দেখা উচিত। বিকল্পভাবে, আপনি নিজের শেলটি শেষ করে পুনরায় চালু করতে পারেন।

পুনশ্চ

আপনি যখন কোনও স্ক্রিপ্ট থেকে চালাবেন, এই প্রথম রেফটি লোড করুন

shopt -s expand_aliases

2
এটি আমার সমস্যার সমাধান! এর আগে, আমি এসএসএইচ এর মাধ্যমে লগ আউট এবং আবার চেষ্টা করার চেষ্টা করেছি, কিন্তু কিছুই ঘটেনি। উপনামটি এখনও পাওয়া যায় নি। দেখে মনে হচ্ছে প্রতিবার এসএসএইচ করার সময় আমাকে এই কাজটি করতে হবে! তুমি জানো কেন এমন হচ্ছে?
ভ্লাদিমির দেশপোটোভিচ

আমি পুনরায় চলার পরামর্শ দিচ্ছি না .bashrc। এটি কিছু সদৃশ এবং ফোলা মানের কারণ হতে পারে। কেন বাইরে বেরোন এবং একটি নতুন শেল শুরু করবেন না? এটি আপডেট হওয়া .bashrcফাইলটি লোড করবে ।
অ্যালিকেলজিন-কিলাকা

2

এটি ঘটতে পারে কারণ আপনার প্যাথটি সমস্ত উপনাম রেফারেন্সড বাইনারিগুলি অসম্পূর্ণ পথ ব্যবহার করার জন্য সঠিকভাবে সেট করা হয়নি। অর্থাত্ / বিন / এলএস এর অধীনে উপস্থিত রয়েছে।

আপনি কি "এক্সপোর্ট PATH = $ पथ: $ ওআরএকসিএলহোম / বিন: / ইউএসআর / ভ্যাক / বিন: / ইউএসআর / ভ্যাকপ্প / বিন: ব্যবহার করে চেষ্টা করে দেখতে পারেন?" বা "রফতানুন PATH = $ ORACLE_HOME / বিন: / usr / ভ্যাক / বিন: / ইউএসআর / শূন্যস্থান / বিন: / বিন: / এসবিিন /: / ইউএসআর / এসবিনের মতো কিছু

যদি তা না হয় তবে স্বতন্ত্র ওরফে রেফ বাইনারি (কোন ইতিহাস) এর জন্য পাথ ডিরেক্টরিটি খুঁজতে "যা" ব্যবহার করুন।


1

নিজেকে জিজ্ঞাসা করার প্রশ্নগুলি হ'ল:

  • আপনার শেলটিতে ইতিমধ্যে ~ / .bashrc কার্যকর করা হয়েছে। এটি কেবল তখনই চালিত হয় যখন শেলটি শুরু হয়। আপনি যদি একটি নতুন শেল খুলেন (চালান bash) এটি হওয়া উচিত। সঙ্গে aliasআপনি আপনার সমস্ত alias লেখা মুদ্রিত দেখতে পাবেন।
  • দ্বিতীয়টি জিজ্ঞাসা করার জন্য: আপনার এলিয়াসগুলির প্রোগ্রামগুলি কি উপলব্ধ। কমপক্ষে এইচ (ওরফে ইতিহাস) অবশ্যই কাজ করা উচিত, কারণ এটি অন্তর্নির্মিত।

1

.bashrcইতিমধ্যে আপনি আপনার নিজের এলিয়াসগুলি সংজ্ঞায়িত করার চেষ্টা করছেন যা ইতিমধ্যে বিশ্বব্যাপী।

সাধারণত আপনার এলিয়াসগুলি কল .bashrcকরার আগে সংজ্ঞায়িত করা হয় /etc/bashrcপরে তাদের সংজ্ঞায়িত করার চেষ্টা করুন ।

এখানে আপনার একটি উদাহরণ .bashrc:

# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions
alias c='clear'
alias l='ls -lt'
alias h='history'
alias d='ls -lt |grep "^d"'

export ORACLE_HOME=/ora11gr2/app/oracle/product/11.2.0/db2
export ORACLE_LIB=/ora11gr2/app/oracle/product/11.2.0/db2/lib
export PATH=$ORACLE_HOME/bin:/usr/vac/bin:/usr/vacpp/bin:.    
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:.

ভয়ঙ্কর উত্তর! আমি এটি ধারাবাহিকভাবে
এডাব্লুএস

1

যদি কোনও ম্যাকওএস ব্যবহারকারী এই উত্তরটি সন্ধান করতে আসে, আমি আমার ম্যাকবুকটিতে এটি চেষ্টা করেছিলাম এবং টার্মিনালটি পুনরায় চালু করাও নতুন উপন্যাস সংজ্ঞা লোড না করে। এটি কাজ করার একমাত্র উপায়টি ছিল source ~/.bashrcপ্রতিবার time আমি তখন আমার ওরফে সংজ্ঞা চলন্ত চেষ্টা ~/.bash_profileএবং এই কি কৌতুক কি।

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