একটি স্ক্রিপ্টে আমি $0
এটির সম্ভাব্য আপেক্ষিক পথে পাচ্ছি। একে নিখুঁত রূপান্তর করার জন্য আমি এই সমাধানটি পেয়েছি যা আমি বুঝতে পারি না:
abspath=$(cd ${0%/*} && echo $PWD/${0##*/})
আমার সমস্যাটি হ'ল ভিতরে ${0%/*}
এবং এর যাদু ${0##*/}
। দেখে মনে হচ্ছে যে প্রাক্তনটি নামটির নামটি বের করে এবং পরেরটি ফাইলটির নাম বের করে, আমি কীভাবে তা পাই না।
dirname
এখানে দরকারী।
BASH_SOURCE
চেয়ে ভাল $0
, যেমন $0
ব্যবহারকারীর টাইপড কমান্ড দেয় যা বর্তমানে কার্যকর স্ক্রিপ্ট নাও হতে পারে।
readlink -f $0
ক্যানোনিকাল পাথ পেতে ব্যবহার করতে পারেন ।