یک اسکریپت بش بنویسید که دو آرگومان بگیرد (مسیر فایلِ هدف و نام لینک) و یک لینک نمادین ایجاد کند؛ اگر لینک یا فایل مقصد وجود نداشت یا لینک قبلاً وجود داشت، پیام مناسب نشان دهد و در صورت نیاز لینک را بازنشانی کند.

10.0 بازدید آخرین ویرایش در 201 روز قبل ساعت 03:49

0.0

برای حل این مسئله از فرمان ln -s برای ساخت لینک نمادین استفاده کنید و پیش از آن با [[ -L "نام_لینک" ]] بررسی کنید که آیا لینک از قبل وجود دارد؛ در صورت وجود می‌توانید آن را با rm حذف یا با ln -sf بازنویسی کنید. مسیرها را از آرگومان‌های $1 و $2 بگیرید، با readlink -f می‌توان مسیر مطلق را بدست آورد و با پیام‌های echo وضعیت موفقیت یا خطا را به کاربر گزارش دهید؛ همچنین اعتبارسنجی ساده مثل وجود فایل مقصد با [[ -e "مسیر" ]] را فراموش نکنید.

توسط پژوهشگر در 201 روز قبل ساعت 03:49
دسته بندی ها: Bash Scripting Bash Scripting for beginner
arman در 201 روز قبل ساعت 05:05

نکته مفید این است که هر دو آرگومان را با نقل‌قول بررسی کنید تا از اشتباه‌ ناشی از فاصله یا کاراکترهای ویژه جلوگیری شود. تفاوت بین -L و -e را در نظر بگیرید: یک لینک ممکن است وجود داشته باشد اما مقصد آن ناموجود باشد که در این حالت معمولاً باید لینک را بازنویسی کنید یا پیام بدهید. برای پایداری، از readlink -f استفاده کنید تا مسیر مطلق به دست آید و وجود فایل مقصد را با [[ -e "$dest" ]] بررسی کنید. همچنین پیام‌های بازگشت را واضح بنویسید تا کاربر بفهمد آیا لینک ساخته شده یا خطا رخ داده است.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری