আমি কী কোনও শিরোনামের কাছে কোনও উপনাম "রফতানি" করতে পারি যা কোনও স্ক্রিপ্ট শুরু করেছিল?


12

আমি একটি ইউটিলিটি স্ক্রিপ্ট লেখার চেষ্টা করছি যা নির্দিষ্ট এলিয়াস সংজ্ঞায়িত করে।
আমার শেলটি tcsh(এটি পরিবর্তন করতে পারে না)।

আমি নিম্নলিখিত চেষ্টা করেছিলাম

#!/bin/tcsh  
alias log 'less ~/logs/log.`date '+%Y%m%d'`''

তারপরে আমি এটিকে এভাবে চালাই:

./myscript  
log

আমি যে আউটপুট পাই তা হ'ল: log: Command not found.

স্বাভাবিকভাবেই যদি আমি এটি চালিত করি:

source myscript  
log

সবকিছু ঠিক আছে.

কোনও উপায় ছাড়াই এটি করা source ...?


আপনি কি aliasআপনার ~/.cshrcফাইলটি রেখেছিলেন ?
কিউয়েট

@ কোয়েট - এটি আমার লক্ষ্য নয় - আমি গতিশীল কিছু চাইছিলাম।
রনকে

উত্তর:


14

আপনি পারবেন না। আপনার স্ক্রিপ্টটি চালিয়ে আপনি একটি নতুন শেল চালাবেন। অভিভাবক প্রক্রিয়া দ্বারা উপনামগুলি দেখা যাবে না।

নির্দেশিত হিসাবে একমাত্র উপায় ব্যবহার করা হয় sourceযাতে বর্তমান শেলটি আপনার স্ক্রিপ্ট ফাইলটি (নতুন প্রক্রিয়া শুরু না করে) প্রসেস করে।


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