اجرای Run As Administrator برنامه ها در CMD
همانطور که میدانید در سیستم عامل لینوکس برای اجرای برنامه های که نیاز به مجوز root دارند یا باید برنامه مورد نظر را در حساب کاربری root اجرا کنید یا اینکه با استفاده از دستور sudo به آن مجوز کافی جهت اجرا شدن در همان User را بدهید. در ویندوز هم میتوان یک برنامه را با دستور runas با یک حساب کاربری دیگر مثل Administrator اجرا نمود اما ویندوز دستوری همانند دستور sudo ندارد تا در حالت اجرای استاندارد Command Prompt یک برنامه که نیاز به اجرای Administrator دارد را به صورت Run As Administrator با همان User فعلی اجرا نمود. (در اینجا منظور همان ویژگی Run As Administrator ویندوز میباشد که در محیط CMD وجود ندارد.)
در این پست قصد دارم نحوه ساخت یک برنامه همانند دستور Sudo لینوکس را برای ویندوز توضیح دهم تا با استفاده از آن به راحتی بتوانید برنامه های که نیاز به اجرای Run As Administrator را دارند را بدون تغییر حساب کاربری در حالت اجرای استاندارد CMD اجرا کنید.
پیشنهاد: اگر شما هم از علاقه مندان به دنیایی خط فرمان ویندوز و ساخت اسکریپت هستید میتوانید از صفحه آموزش CMD و آموزش Batch Script به صورت رایگان استفاده کنید.
ساخت دستور Sudo برای ویندوز
برای شروع نرم افزار Notepad ویندوز را اجرا کنید و اطلاعات زیر را در آن کپی کنید:
@echo Set objShell = CreateObject("Shell.Application") > %temp%\sudo.tmp.vbs @echo args = Right("%*", (Len("%*") - Len("%1"))) >> %temp%\sudo.tmp.vbs @echo objShell.ShellExecute "%1", args, "", "runas" >> %temp%\sudo.tmp.vbs @cscript %temp%\sudo.tmp.vbs
پس از کپی نمودن اطلاعات بالا در فایل Notepad با استفاده از کلیدهای Ctrl+S محتوای کپی شده را با نام sudo.bat ذخیره نموده و در آخر فایل sudo.bat را یا در آدرس C:\Windows کپی کنید یا در آدرس C:\Windows\System32 کپی کنید.
از حال به بعد میتوانید بدون مشکل برنامه های مورد نظر خود را در حالت اجرای استاندارد Command Prompt به صورت Run As Administrator اجرا کنید. برای اینکار فقط کافیست قبل از دستور مورد نظر خود از دستور Sudo استفاده کنید.
مثلا برای اجرای خود CMD به صورت Run As Administrator دستور به شکل زیر نوشته میشود.
Sudo cmd
پس از فشرد کلید Enter از شما مجوز اجرای برنامه خواسته میشود که باید گزینه Allow را انتخاب کنید.