وبلاگ رسانگار
با ما حرفه ای باشید

سرور مجازی NVMe

چگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیم

0 2
زمان لازم برای مطالعه: 2 دقیقه


گاهی اوقات ممکن است نیاز داشته باشید که یک اسکریپت پوسته را به عنوان کاربر دیگری غیر از کاربر فعال اجرا کنید روی پوسته. این بسیار آسان است و در چند مرحله ساده قابل انجام است، پس چگونه این کار را انجام می دهید؟ بیایید دریابیم.

پیش نیازها

قبل از شروع، اطمینان حاصل کنید که به پوسته یک سیستم لینوکس دسترسی دارید. هر توزیع لینوکس به خوبی انجام خواهد شد. در این راهنما، ما اوبونتو 18.04 را اجرا می کنیم.

به همان اندازه مهم این است که مطمئن شوید که یک اسکریپت پوسته با مجوزهای اجرا دارید. ما یک پوسته اسکریپت ساده به نام داریم خوش آمدید.ش که نام یک کاربر را درخواست می کند و آن را در آن چاپ می کند terminal. در اینجا نگاهی گذرا داریم.

چگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیم

روش اجرای یک اسکریپت پوسته به عنوان کاربر دیگر

به طور معمول، اجرای یک اسکریپت پوسته به عنوان کاربری که در حال حاضر به سیستم وارد شده است، بسیار مشکل است. به سادگی اسکریپت پوسته را به صورت زیر فراخوانی کنید:

$ ./خوش آمدید.ش

چگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیمچگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیم

اما چگونه می توانید اسکریپت را به عنوان کاربر دیگری جدا از خودتان اجرا کنید؟ برای رسیدن به این هدف، به سادگی از نحو نشان داده شده در جایی استفاده کنید کاربر دیگر کاربر متفاوتی است که می خواهید اسکریپت را اجرا کنید.

$ سو کاربر دیگر -s script.sh

فرض کنید می خواهیم اسکریپت را به صورت اجرا کنیم لینوکس وی کاربر. دستوری که باید اجرا شود به صورت زیر خواهد بود:

$ سو لینوکس وی -s خوش آمدید.ش

چگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیمچگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیم

برای تأیید اینکه کاربر دیگر اسکریپت را اجرا کرده است، دستور را مطابق شکل اجرا می کنیم.

$ سودو -اچ -u کاربر دیگر bash ‘echo “من $USER هستم، با uid $UID”

در این حالت کاربر دیگر ما است لینوکس وی، بنابراین ما باید دستور را فراخوانی کنیم.

$ سودو -اچ -u لینوکس وی bash ‘echo “من $USER هستم، با uid $UID”

را USER $ و $UID متغیرها print نام کاربری و UID کاربری که اسکریپت را اجرا می کند. اگر شک دارید یا می خواهید این را تأیید کنید، می توانید آن را مشاهده کنید /etc/passwd فایل و مشخصات کاربر را به صورت زیر جستجو کنید.

$ گربه /و غیره/passwd | grep لینوکس وی

در اینجا خلاصه ای از خروجی هر دو دستور آمده است. توجه کنید که چگونه نام کاربری و UID اجرای اسکریپت پوسته با نام کاربری موجود در آن مطابقت دارند /etc/passwd فایل.

پیشنهاد می‌کنیم بخوانید:  Bash برای هر خط در یک فایل

چگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیمچگونه یک اسکریپت شل را به عنوان یک کاربر متفاوت اجرا کنیم

نتیجه

اگر تعجب کردید که چگونه یک اسکریپت پوسته را به عنوان کاربر دیگر اجرا کنید، امیدواریم که جستجوی شما اکنون به پایان رسیده است.

برای نگارش بخشهایی از این متن ممکن است از ترجمه ماشینی یا هوش مصنوعی GPT استفاده شده باشد
لطفا در صورت وجود مشکل در متن یا مفهوم نبودن توضیحات، از طریق دکمه گزارش نوشتار یا درج نظر روی این مطلب ما را از جزییات مشکل مشاهده شده مطلع کنید تا به آن رسیدگی کنیم

زمان انتشار: 1402-12-30 23:22:03

امتیاز شما به این مطلب
دیدگاه شما در خصوص مطلب چیست ؟

آدرس ایمیل شما منتشر نخواهد شد.

لطفا دیدگاه خود را با احترام به دیدگاه های دیگران و با توجه به محتوای مطلب درج کنید