मैं @ डैनियल-एंडरसन से असहमत हूं। मुझे नहीं लगता कि उन समाधानों को ध्यान में रखते हुए बुलाया कार्यक्रम पर तर्क दिया जाता है। लगभग सभी निष्पादक पथ निर्देशिकाओं को वर्तमान निर्देशिका के सापेक्ष मानते हैं, इसलिए यहां तक कि तर्कों को पारित करने से भी काम नहीं चलने वाला है।
केवल एक मामला जिसमें कोई प्रोग्राम अलग तरीके से व्यवहार करेगा यदि उसे ए से बुलाया जाए symlink
यदि यह 0 वें तर्क की जांच करता है। मुझे पता है कि सिम्कलिन का उपयोग करके इसके आसपास काम करने का कोई तरीका नहीं है। आस-पास का सबसे सरल काम एक मध्यवर्ती शेल स्क्रिप्ट बना रहा है:
#!/bin/sh
/path/to/executable/that/needs/0th/argument/to/be/actual/path $@
ध्यान दें कि यदि कुछ विचित्र कारण के लिए आपको इसे 0 वां तर्क देने की आवश्यकता है जो वास्तव में यह नहीं है कि यह कहाँ है, तो आप निष्पादन-ए का उपयोग कर सकते हैं:
#!/bin/bash
(exec -a /path/to/executable/to/fool /path/to/fool/executable/with $@)
ध्यान दें कि "-a" तर्क कड़ाई से POSIX कल्पना नहीं हो सकता है, इसलिए मैंने विशेष रूप से बैश का उपयोग किया। यह मानते हुए कि आपके रास्ते में एक ~ / बिन फ़ोल्डर है, पहला (सामान्य) मामला जल्दी से पूरा किया जा सकता है:
echo -e '#!/bin/sh\n/path/to/executable $@' > ~/bin/shortcut
chmod 755 ~/bin/shortcut
shortcut