আমি একটি বাশ স্ক্রিপ্ট লিখছি যা কমান্ড হিসাবে এর প্রতিটি আর্গুমেন্ট চালায়। এটি আমার কমান্ডের জন্য কাজ করে PATH
, তবে উপস্বাদের জন্য নয়। আমি সরাসরি স্ক্রিপ্টে একটি উপনাম কল করতে পারি, তবে যুক্তি হিসাবে পাস করা কোনও উপন্যাস আমি কল করতে পারি না।
সমস্যা (আমি ধরে নিই) এটি হ'ল ভেরিয়েবলের আগে উপাধিগুলি প্রসারিত হয়। কোনও ভেরিয়েবল থেকে এলিয়াস চালানোর কোনও উপায় আছে কি?
নমুনা লিপি:
#!/bin/bash
# File: runall
shopt -s expand_aliases
source ~/.aliases
while (( "$#" )); do
$1
shift
done
runall "echo test"
কাজ করে, কিন্তু runall "myalias"
দেয়runall: line 8: myalias: command not found
eval
ভেরিয়েবলগুলির পক্ষে এটি কেন বিপজ্জনক ?