Як відкрити командний рядок у певній папці як адміністратор?


37

Я зробив ярлик до cmd.exe і вказав папку, в яку я хочу запустити. Потім я перейшов до Advanced і поставив позначку Запустити як адміністратор .

Коли я двічі клацну по ярлику, він завжди починається C:\Windows\System32.

Що мені не вистачає? Як я можу отримати командний рядок для запуску у вказаній папці?

властивості ярлика

підказка в System32

Відповіді:


36

У цілі слід вказати cmd /k cd c:\crp


7
Замість cd використовуйте pushd, тоді він також буде працювати на інших дисках, ніж c: і навіть unc-спільних.
тис

2
Щоб зробити статус адміністратора більш видимим, можна встановити назву вікна та колір вікна. Приклад: `cmd.exe / K title Підвищений && color 1a && cd / D c:`
Axel Kemper

2
@ths pushd працює для unc, де CD не справді. Але ваше невелике припущення про те, що CD не зміниться на інші диски, є невірним, див. Cd / d (як ви, напевно, знаєте).
барлоп

CD / d досі не може покрити unc-шляхи ... тож спірне питання
JasonXA

@JasonXA, про що вже було сказано в коментарі прямо над вашим коментарем, а також у першому коментарі.
барлоп

47

Якщо ви хочете, щоб обґрунтування випливало з цього приводу Start in, явно ігнорується, коли виконується підвищення (лише на бінарних файлах, що входять до складу самого Windows), щоб захистити від потенційної вразливості безпеки.

Основна ідея полягає в тому, що потенційно шкідливі DLL-файли, розташовані в робочому каталозі, можуть контролюватися іншим користувачем, ніж поточний адміністратор, і можуть завантажуватися з високими привілеями. Щоб цього не допустити, UAC скидає робочий каталог. Оскільки ярлики "Почати в" встановлюються до того, як відбудеться піднесення, це скидається під час піднесення. В ідеальному світі цей захист застосовуватиметься до всіх висот, але він стосується лише вбудованих бінарних файлів Windows, оскільки він порушує деякі сторонні програми, які очікують збереження робочого каталогу.

Інші відповіді обходять це, кажучи підвищеному cmdзмінити свою робочу директорію після того, як відбудеться підвищення через /kаргумент.


3
+1 для пояснення причини, я завжди думав, що це помилка, хаха.
modiX

28

Всередині Провідника є Панель інструментів швидкого доступу (QAT) з моменту втручання стрічки в Windows 8. Клацніть на File-> open CMD prompt-> Open CMD prompt as adminі зробіть клацання правою кнопкою миші та виберіть, щоб закріпити її на QAT.

введіть тут опис зображення

Тепер ви можете натиснути на цю іконку в будь-якій папці, яка вам подобається, і cmd тепер відкриється в цій папці.

введіть тут опис зображення

Щоб швидше запустити cmd як адміністратор з QAT, натисніть ALTклавішу, і ви побачите число для позиції в QAT.

введіть тут опис зображення

Якщо зараз натиснути номер, запуститься інструмент у цій позиції (у моєму випадку 4 виконує cmd як адміністратор).


Чи можна це перетворити на ярлик?

2
@Маст, натисніть клавішу ALT і ви побачите номер позиції в QAT. Якщо зараз натиснути номер, запускається інструмент у цій позиції
magicandre1981

3
це ідеальне рішення :)
Аарон

Божевільний хак! У Windows 10 ви можете використовувати powershellзамість cmdопції.
Paramvir Singh Karwal

@ParamvirSinghKarwal так, у програмі Win10 Microsoft видалила cmd відкриту та замінила запис cmd на powerhell з моменту оновлення версії 1703
magicandre1981

8

Барлоп правильний. Якщо ви додасте /k cd "\path\to\folder"до поля «Ціль» (після cmd.exe), отримане вікно «Командний рядок» виконає cdкоманду, а потім залишить вам підказку робити, як завгодно. Якщо вам потрібно перейти на інший диск , вам знадобиться, cd /dа не просто cd. Якщо вам потрібно перейти на мережевий накопичувач, скористайтеся pushdнатомість - він автоматично монтує цільовий шлях UNC у якості диска та змінює його.

/kПеремикач з cmdдопомогою «зробити цю команду і K EEP підказка відкрита.» Все після цього /kтрактується як буквальна команда, тому вам не потрібно турбуватися про втечу. Ви можете використовувати &&для виконання декількох команд: cd "\path\to\folder" && echo Hi!буде створювати підказку в цьому каталозі з Hi!надрукованими вгорі.

Еквівалент /kцього не підтримує підказку навколо /c(for "Execute this c ommand").


3

Це насправді не те, що ви просите, але коли я зрозумію, що ви правильно, це допоможе досягти того, що ви намагаєтеся обійти. спробуйте позначити shift+ rightclickу певній папці та виберіть open command window here. Якщо це не ваша проблема, просто дайте мені знати, і я усуну це.

І (спасибі Боб; не знав цього і раніше), можна навіть зробити це піднесеним.

Джерело з коментаря Боба .

[...] Поки ми тут, ми також можемо додати необхідні клавіші, щоб відкрити піднесений рядок кожної літери диска, приєднаної до системи. Це легко досягти, додавши запис до реєстру. Тому скопіюйте / вставте текст нижче у текстовий файл і дайте йому назву чогось типу "admin.reg" та двічі клацніть по ньому.

Windows Registry Editor Version 5.00    
[-HKEY_CLASSES_ROOT\Directory\shell\runas]       
[HKEY_CLASSES_ROOT\Directory\shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"=""    
[HKEY_CLASSES_ROOT\Directory\shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""    
[-HKEY_CLASSES_ROOT\Directory\Background\shell\runas]    
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"="" 
[HKEY_CLASSES_ROOT\Directory\Background\shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""    
[-HKEY_CLASSES_ROOT\Drive\shell\runas]    
[HKEY_CLASSES_ROOT\Drive\shell\runas]  @="Open command window here as Administrator"  "HasLUAShield"=""    
[HKEY_CLASSES_ROOT\Drive\shell\runas\command]  @="cmd.exe /s /k pushd \"%V\""

Тепер якщо ви клацніть правою кнопкою миші на будь-якій папці, ви побачите обидва варіанти.


Це була перша думка, яку я теж мав, але це не питання.
Райстафаріан

якби у нас був спосіб зробити це піднесеним, я був би радий.
тис

1
@ths Ви можете додати опцію.
Боб

1
дякую @Bob, клавіша "Extended", вона навіть буде в меню "shift-click".
тис

@Raystafarian: Я знаю, і я відчуваю себе якось неприємно, відповідаючи на це, усвідомлюючи це. Я міг зрозуміти, що люди це сприймають через це. Але з іншого боку, я можу собі уявити, що досить багато людей, які знайдуть цю ОП за допомогою веб-пошуку, можуть бути ще зручнішими з цим рішенням для своїх потреб. Ось також, чому я не просто залишив це як коментар до ОП, оскільки цей пізніше просто може бути видалений.
Заїбіс

1

Для будь-кого, як я, хто натрапив на це, намагаючись відкрити cmd як адміністратор на окремому диску ("E:" в моєму випадку), можливо, у вас виникли проблеми при спробі cd E:/somedirтощо. Це фактично не змінить каталог на новий диск.

Якщо це ваша проблема, і вам просто потрібно використовувати cmd як адміністратор на іншому диску , синтаксис cmd - це насправді просто E:(або будь-яка літера диска), без жодної cdкоманди.

Тож ви можете просто:

  1. Пошук у Windows> "cmd"> Клацніть правою кнопкою миші> Запустити як адміністратор
  2. Просто введіть E:(або будь-яку літеру диска, на яку ви хочете перейти, а потім двокрапку)

1

Якщо вам потрібно запустити з іншого диска (наприклад, D: \ щось), ніж ваш системний диск (тобто C: \ Windows \ system32), ви можете помістити в поле "Ціль" наступне:

cmd /k "cd /d D:\<your directory here>"

Ключовим тут є додавання /dпараметра перед вашим cd.


0

Коли ви відкриєте командний рядок як адміністратор, і він показує вам "C: \ Windows \ System32", все, що вам потрібно зробити, - це ввести "cd ..", і ви візьмете вас за один каталог, який буде "C: \ Windows" . Повторіть "cd .." знову, щоб перейти до "C: \", звідки ви тепер можете "cd Користувачі / ім'я / папка"


2
Заходьте по-справжньому .... Якщо ви хочете поставити відповідь так, то навчіться додати набагато більше деталей і будьте більш чіткими. Якщо у вас є швидший спосіб чи ви робите це, ніж те, що вже вказано в інших відповідях, то чому б вам не показати це з більш чіткими деталями. Я можу придумати спосіб, але я не збираюся робити вашу роботу за вас, але міг легко зробити законний відповідь з цього і зробити його фактично прийнятним ... легко ... просто введіть, прочитайте, тестуйте, вивчіть тощо. Давай справжній Kligmaker, який не можеш зробити кращою за те зі своєю ідеєю?
Pimp Juice IT
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.