উন্নীত অধিকার সহ কমান্ড লাইন থেকে প্রোগ্রাম কীভাবে চালানো যায়


44

যখনই আমি ইতিমধ্যে অ-উন্নত কমান্ড লাইনে আছি তখন কি উন্নত অধিকার সহ কোনও প্রোগ্রাম বা কমান্ড চালানোর কোনও উপায় আছে?

ঠিক একই ক্রিয়াটি সম্পাদিত হবে যখন আমি প্রোগ্রামের শর্টকাটে ক্লিক করি এবং প্রশাসক হিসাবে রান নির্বাচন করি ।

Runas কমান্ড সম্ভবত একটি সমাধান নয় - এটি একটি পাসওয়ার্ড জন্য অনুরোধ, কিন্তু আমি শুধু চাই UAC ডায়ালগ।

উত্তর:


14

দেখে মনে হচ্ছে এই ইউটিলিটি - হাইড স্টার্ট - আপনি / ইউএসি স্যুইচটি ব্যবহার করলে আপনি যা চান তা করবে। এখানে একটি উদাহরণ কমান্ড লাইন:

hstart /UAC "notepad.exe"

এটি ইউএএসি ডায়ালগটিকে পপআপ করবে রুনাসের মতো পাসওয়ার্ড না চাইতে।

এখানে চিত্র বর্ণনা লিখুন


2
সতর্কতা: যে সামান্য ইউটিলিটি 20 $ যাদের ছোট পকেট রয়েছে, তাদের পরিবর্তে রানআডমিন ব্যবহার করুন :)
ওয়েগো টোমারস ২

এই আসা-আপ না উইন্ডোজ 10
হবে

50

পাওয়ারশেলে এটি করার একটি উপায় রয়েছে :

PS> Start-Process powershell -Verb runAs

19
ঠিকঠাক কাজ মনে হচ্ছে। কমান্ড লাইন থেকে, আপনি উদাহরণস্বরূপ করতে পারেনpowershell -Command "Start-Process 'C:\program.exe' -Verb runAs"
মার্জ করুন

7
এটি সঠিক / সেরা উত্তর আইএমও হিসাবে চিহ্নিত করা উচিত - এটি তৃতীয় পক্ষের ইউটিলিটিগুলি ছাড়া কাজ করে।
ক্রিম্বো

5
@ মার্সজে - ফিউইউউউয়ের বিল্ডিংগুলি সহজ ক্ষেত্রে আর্গুমেন্টগুলি তাদের নিজস্ব এককৃত মূল্য হিসাবে চলে যায়, যেমন powershell -Command "Start-Process 'gvim' 'c:\windows\system32\drivers\etc\hosts' -Verb runAs"। ধন্যবাদ!
রাফিন

আমি কীভাবে আমার বর্তমান সম্পাদনকারী স্ক্রিপ্টে এলিভেটেড কমান্ড প্রম্পটের আউটপুট পাইপ করতে পারি?
Wheeler

@ হুইলার, আমি নিশ্চিত যে আপনি এটি করতে পারবেন না তবে আপনি একটি প্রস্থান কোডটি ফিরে আসতে পারেন:$p = Start-Process powershell -Verb runAs -ArgumentList "-Command ``"& { ``$Host.SetShouldExit(123) }``"" -PassThru; $p.ExitCode
রুস্তম

6

উপর নির্মাণের রুস্তম 'র উত্তর , আপনি পারবেন:

  • su.batনিম্নলিখিত ডি-লাইনার সহ আপনার ডিফল্ট% PATH% এ কোথাও একটি ব্যাচ ফাইল তৈরি করুন :@powershell start -verb runas %*
  • আপনার পাওয়ারশেল $ প্রোফাইলে এই ফাংশনটি যুক্ত করুন :function su {start -verb runas @args}

এখন আপনি su <command> [parameters]উভয় শেল ইস্যু করতে পারেন !


2

রানএডমিন একটি ছোট ইউটিলিটি (১৫০ কেবি) যা আপনাকে কমান্ড লাইন থেকে উন্নত অধিকারের সাথে একটি প্রোগ্রাম চালাতে দেয় (এটি ইউএসিটি দেখায়)। এবং হাইড স্টার্টের বিপরীতে ফ্রি হয়।


2

এটি আমার জন্য উইন্ডোজ 10 সহ সমস্ত প্ল্যাটফর্মে কাজ করে My আমার প্রয়োজনীয়তাগুলি সহজ, আপনার যদি বিদ্যুতের প্রয়োজন হয় তবে আপনি পদ্ধতির সাথে মানিয়ে নিতে পারেন ।

আমি sudo.cmdলিনাক্স সুডো কমান্ডের নামে একটি ছোট স্ক্রিপ্ট নিয়ে এসেছি । এটি যথেষ্ট চিন্তা করে বলে কাজ করে। আমি প্রয়োজনীয়তাগুলি, অনুসরণ করার পদক্ষেপগুলি এবং স্ক্রিপ্টটির নীচের দিকে একটি উদাহরণ সহ রূপরেখা করেছি। প্রথমে সতর্কতার শব্দ।

সতর্কতা : কমান্ডটি ডিফল্টরূপে উইন্ডোজ সিস্টেম ডিরেক্টরিতে চালিত হয়। আপনিcdপ্রথমে নিরাপদে কোথাও যেতেচাইবেন।

প্রয়োজনীয়তা :

  • অ্যাডমিনিস্ট্রেটরের সাথে কমান্ড রান করুন উইন্ডোজ .CMD
    বা সেমিডি -শেল থেকে একটি সুবিধাযুক্ত ।
  • কমান্ডটিতে সাধারণ উইন্ডোজ সুবিধাগুলি পরীক্ষা করা দরকার
    • অন্য কথায় কমান্ডটি কাজ করবে না যতক্ষণ না আমি ইতিমধ্যে একটি সুবিধাযুক্ত অ্যাকাউন্টে লগ ইন করেছি।
  • প্রশাসনের অনুমতি নিয়ে কমান্ডটি কার্যকর করুন এবং স্ক্রিপ্টের ভিতরে ডাকলে চালিয়ে যান। সুতরাং আদেশটি সম্পূর্ণ হওয়ার জন্য অপেক্ষা করুন।
  • সহজ থাকুন তাই এটি সর্বদা কার্যকর হবে
  • আমি ইতিমধ্যে লগ ইন থাকলে প্রতিবার একটি পাসওয়ার্ড প্রবেশ করার দরকার নেই।
    • লিনাক্সের আসল কমান্ডের মতো আমি যদি একবার পাসওয়ার্ড লিখতে পারি তবে আরও ভাল পদ্ধতি হবে sudo

সমাধান :

  1. পাস হওয়া সমস্ত আর্গুমেন্ট কার্যকর করতে একটি কমান্ড স্ক্রিপ্ট তৈরি করুন, sudo.cmd
  2. কমান্ড স্ক্রিপ্ট এটা নাম উইন্ডোজ ছোট করে কাটা তৈরি করুন: sudo.lnk
  3. sudoআপনার উইন্ডোজ PATH এ শর্ট-কাট রাখুন যাতে এটি দেখা যায়।
  4. শর্ট-কাট বৈশিষ্ট্যগুলি সম্পাদনা করুন, Start in:পথটি ফাঁকা করুন।
  5. [ Advanced] বোতামটি ক্লিক করুন - চেক করুনRun as Administrator
  6. আপনার উইন্ডোজ পাথের শর্ট-কাটগুলি সক্ষম করুন, পাঠ্য পরিবেশের পরিবর্তনশীল ব্যবহার করুন, যেমন।
d:> echo %PATHEXT%
    .lnk;.EXE;.CMD;.BAT;.COM

আপনি sudo dirকমান্ড-লাইনে টাইপ করলে উইন্ডোজটি প্রদর্শন করবে

User Account Control

Do you want to allow this app to make changes to this device?

  [YES]  [NO]

পপ-আপ অ্যাক্সেস নিয়ন্ত্রণ। যদি আপনি "[ NO]" ক্লিক করেন তবে কিছুই হবে না। উইন্ডোজ একটি " Access is denied." বার্তা প্রদর্শন করবে ।

আপনি যখন "[ YES]" ক্লিক করেন তারপরে ডিরেক্টরি কমান্ডটি একটি উন্নত সুবিধায় চলে। অবশ্যই আপনি আরও কিছু আকর্ষণীয় কিছু চান যা কোনও পরিষেবাতে থামানো বা জিজ্ঞাসা করার মতো:

 sudo sc query SDRSVC

SDRSVC হ'ল "উইন্ডোজ ব্যাকআপ পরিষেবা" এর পরিষেবার নাম, এটি একটি পৃথক সিএমডি উইন্ডোতে নিম্নলিখিতটি দেখায়:

  [sudo]

   administrator
  ---------------

  sc query SDRSVC

SERVICE_NAME: SDRSVC
        TYPE               : 10  WIN32_OWN_PROCESS
        STATE              : 4  RUNNING
                                (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
        WIN32_EXIT_CODE    : 0  (0x0)
        SERVICE_EXIT_CODE  : 0  (0x0)
        CHECKPOINT         : 0x0
        WAIT_HINT          : 0x0

  [done]

Press any key to continue . . .

sudo.cmdস্ক্রিপ্ট নিজেই খুবই মৌলিক। যেমনটি আমি বলেছি আমার প্রয়োজনগুলি সহজ। আমি পরীক্ষার জন্য কোড নিযুক্ত করার সময় কেবল পরিষেবাগুলি বন্ধ করতে এবং শুরু করতে চাই।

sudo.cmd:

 @echo off
 @rem    sudo.cmd
         cd /d %temp%
 @echo.
 @echo.   administrator
 @echo.  ---------------
         cd 
 @echo.
 @rem  _________________________________________________
 @rem      -- Print usage . . .
        @if    [""]      ==["%~1"]   goto USAGE
        @if /i ["--HELP"]==["%~1"]   goto USAGE
 @rem  _________________________________________________
 @rem
 @echo.  %*
 @rem
         %*
 @rem
         set EXIT_STATUS=%ERRORLEVEL%
 @rem  -- -- -- -- --  
 @echo.
 @echo.  [done]
 @rem  ______________________________________________________
 :Exit
 @echo.
 @pause
  exit /b  %EXIT_STATUS%
 @rem  ______________________________________________________
 :USAGE
 @echo.
 @echo  ^Usage:
 @echo.    sudo ^<complete command line^>
 @echo.
 @echo.  Attempts to rune the: ^<complete command line^>
 @echo.  under Administrator priviliges.  Relies on Windows 
 @echo.  prompt for elevated privileges.
 @rem  ______________________________________________________
 @goto Exit

pauseকমান্ড অপেক্ষা আপনি ফলাফল পুনর্বিচারের জন্য। আপনি যদি pauseপ্রশাসনের উইন্ডোটি বন্ধ করেন এবং কমান্ডটি কাজ করেছে কিনা তা আপনি জানেন না। ERRORLEVELহুকুম থেকে পাশাপাশি ফিরিয়ে দেওয়া হয়।


2

এটি উইন্ডোজ 10 এর জন্য কাজ করে, অন্যান্য উইন্ডোজ সংস্করণ দিয়ে পরীক্ষা করেনি।

Cmd.exe থেকে প্রশাসকের অধিকার সহ নোটপ্যাড খোলার একটি উদাহরণ যা পাওয়ারশেল শুরু করে যা উন্নত অনুমতিগুলির জন্য জিজ্ঞাসা করে।

C:\>start powershell -command "&{start-process -filepath notepad -verb RunAs}"

এটি আপনাকে [হ্যাঁ] [না] দিয়ে একটি ইউএসি ডায়ালগ বক্স দেবে (যদি সক্ষম করা থাকে), অথবা আপনাকে প্রশাসকের পাসওয়ার্ডের জন্য জিজ্ঞাসা করবে।

নোটপ্যাড সহ হোস্ট ফাইলটি খোলার আর একটি উদাহরণ হ'ল:

C:\>start powershell -command "&{start-process -filepath notepad 'C:\Windows\System32\drivers\etc\hosts' -verb RunAs}"

আরও তথ্য: https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/start-process?view=powershell-6


এক্সিকিউটেবলের পক্ষে যুক্তিগুলি -ArgumentListপরামিতি হওয়া উচিত , প্রারম্ভিক প্রক্রিয়াটির জন্য কেবল অতিরিক্ত পরামিতি নয়।
অ্যাপলশেল

0

কটাক্ষপাত স্টার্ট ++, - এটা অন্যান্য দরকারী জিনিস অনেক সহ এই কার্যকারিতা থাকে। ইউএসি প্রম্পট দিয়ে চালানোর জন্য, sudoএখানে প্রদর্শিত হিসাবে কমান্ড লাইনে আপনার প্রোগ্রামটির নামটি কেবল ব্যবহার করুন:

বিকল্প পাঠ

এখানে আরও কয়েকটি বৈশিষ্ট্য রয়েছে (আপনি নিজের নিজস্ব সংযোজনও করতে পারেন):

বিকল্প পাঠ

বিকল্প পাঠ


দেখতেও বেশ ভাল লাগছে তবে আমি ইতিমধ্যে এফএআরআর ব্যবহার করি যা স্টার্ট ++ এবং আরও অনেক কিছু (অবশ্যই সুডো ব্যতীত) এর মতোই কার্যকারিতা রয়েছে।
লুকাস সেনোভস্কি

2
লিঙ্কটি আপনাকে স্বাগতম: ব্র্যান্ডনটলস ডটকম বলেছে। এই ওয়েব পৃষ্ঠাটি নিখরচায় পার্ক করা আছে। Brandontools.com কিনতে চান?
xmojmr

1
যেমন @ xmojmr বলেছেন, সেই সাইটটি মারা গেছে। আপনি যদি কোনও নতুন অবস্থান জানেন (আমি এত তাড়াতাড়ি একটিও পাইনি), আপনার উত্তরের লিঙ্কটি আপডেট করা উচিত।
আবেল

-1

আপনি সেট করতে পারেন __COMPAT_LAYER=RunAsAdmin। তারপরে কমান্ডগুলি পৃথক এলিভেটে চলবে cmd

উদাহরণ .bat:

rem Run next command elevated to Admin.
set __COMPAT_LAYER=RunAsAdmin
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\Group Policy\{35378EAC-683F-11D2-A89A-00C04FBBCFA2}" /t REG_DWORD /v "NoBackgroundPolicy" /d "1"
rem Disable elevation
set __COMPAT_LAYER=
rem continue non elevated
reg add "HKEY_CURRENT_USER\SOFTWARE\Policies\Microsoft\Internet Explorer\Main" /t REG_SZ /v "Start Page" /d "https://www.google.com" /f

সমস্ত সামঞ্জস্যতা মোড বিকল্পগুলি এমএস অ্যাপ্লিকেশন সামঞ্জস্যতা সরঞ্জামদণ্ডে তালিকাভুক্ত।


এই ব্যাচের ফাইলটি ভয়াবহভাবে ভেঙে গেছে। আপনি ;মন্তব্য ডিলিমিটার হিসাবে ব্যবহার করতে পারবেন না । "ব্যাচ ফাইলগুলি সেমিকোলনকে স্বীকৃতি দেয় না এবং সাধারণত একটি খারাপ কমান্ড সম্পর্কে ত্রুটি বার্তা দেয়" "
DavidPostill
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.