আমার একটি উপনাম রয়েছে যা আমি প্রায়শই ব্যবহার করি এমন কোনও সরঞ্জামে কিছু পরামিতিগুলিতে যায়। কখনও আমি নিজেকে হিসাবে চালানো, কখনও কখনও sudo অধীনে। দুর্ভাগ্যক্রমে, অবশ্যই, সুডো তার নামটি সনাক্ত করতে পারে না।
কীভাবে উপনামটি পাস করবেন সে বিষয়ে কারও ইঙ্গিত রয়েছে?
এই ক্ষেত্রে, আমি যখন ডিবাগ করব তখন পার্লের জন্য আমার কাছে প্রচুর বিকল্প রয়েছে:
alias pd='perl -Ilib -I/home/myuser/lib -d'
কখনও কখনও, আমাকে চালনার পরিবর্তে আমার সরঞ্জামগুলি মূল হিসাবে ডিবাগ করতে হবে:
pd ./mytool --some params
আমার এটি সুডোর অধীনে চালানো দরকার। আমি অনেক উপায়ে চেষ্টা করেছি:
sudo eval $(alias pd)\; pd ./mytool --some params
sudo $(alias pd)\; pd ./mytool --some params
sudo bash -c "$(alias pd)\; pd ./mytool --some params"
sudo bash -c "$(alias pd); pd ./mytool --some params"
sudo bash -c eval\ "$(alias pd)\; pd ./mytool --some params"
sudo bash -c eval\ "'$(alias pd)\; pd ./mytool --some params'"
আমি আমার বর্তমান পিডি উরফটি পুরোপুরি ব্যবহার করা হয়েছে কিনা তা নিশ্চিত করার জন্য একটি সুন্দর, সংক্ষিপ্ত পথের জন্য প্রত্যাশা করছিলাম (যদি পরে এটির জন্য আমার টুইঙ্ক করা দরকার) তবে আমার কিছু প্রচেষ্টা মোটেই সংক্ষিপ্ত হয়নি। আমার শেষ অবলম্বনটি এটি একটি শেল স্ক্রিপ্টে রাখা এবং এমন কোনও জায়গা রাখা যা সুডো খুঁজে পেতে সক্ষম হবে। তবে উপাধিগুলি কখনও কখনও খুব সহজ হয়, সুতরাং এটি একটি শেষ অবলম্বন।
A trailing space in value causes the next word to be checked for alias substitution when the alias is expanded.