یک اسکریپت بش بنویسید که دو آرگومان بگیرد (مسیر فایلِ هدف و نام لینک) و یک لینک نمادین ایجاد کند؛ اگر لینک یا فایل مقصد وجود نداشت یا لینک قبلاً وجود داشت، پیام مناسب نشان دهد و در صورت نیاز لینک را بازنشانی کند.
10.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:49 0.0
برای حل این مسئله از فرمان ln -s برای ساخت لینک نمادین استفاده کنید و پیش از آن با [[ -L "نام_لینک" ]] بررسی کنید که آیا لینک از قبل وجود دارد؛ در صورت وجود میتوانید آن را با rm حذف یا با ln -sf بازنویسی کنید. مسیرها را از آرگومانهای $1 و $2 بگیرید، با readlink -f میتوان مسیر مطلق را بدست آورد و با پیامهای echo وضعیت موفقیت یا خطا را به کاربر گزارش دهید؛ همچنین اعتبارسنجی ساده مثل وجود فایل مقصد با [[ -e "مسیر" ]] را فراموش نکنید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
نکته مفید این است که هر دو آرگومان را با نقلقول بررسی کنید تا از اشتباه ناشی از فاصله یا کاراکترهای ویژه جلوگیری شود. تفاوت بین -L و -e را در نظر بگیرید: یک لینک ممکن است وجود داشته باشد اما مقصد آن ناموجود باشد که در این حالت معمولاً باید لینک را بازنویسی کنید یا پیام بدهید. برای پایداری، از readlink -f استفاده کنید تا مسیر مطلق به دست آید و وجود فایل مقصد را با [[ -e "$dest" ]] بررسی کنید. همچنین پیامهای بازگشت را واضح بنویسید تا کاربر بفهمد آیا لینک ساخته شده یا خطا رخ داده است.
گزارش