Как выполнить ShortCut из командной строки в Windows 7


28

Мы пришли к сценарию, в котором мы должны использовать Shortcut file ( .lnk), который находится на рабочем столе, для запуска приложения для устройства без монитора (т. Е. Без ручного вмешательства).

Есть ли способ выполнить его из командной строки?

Ответы:


21

Если вы используете двойные кавычки вокруг «длинного файла names.lnk» и у вас есть привилегии, он будет выполнен. Кавычки необходимы, когда в LFN существуют пробелы.

Например, "C:\Users\Sunny\Start Menu\Programs\XBMC\xbmc.lnk"открывает XBMC . То же самое верно для поля RunWin + R "path and filename.lnk",Enter


2
privvies? Что это значит? Я искал Google по этому слову, и результаты не были связаны.
Hack-R

1
@ Hack-R извините за мой сленг, использующий привилегии для обозначения привилегий или разрешений безопасности для выполнения
Тони Стюарт Sunnyskyguy EE75

1
@ SunnyskyguyEE75 Что делать, если файл .lnk содержит ярлык для приложения на основе терминала (например, cmd.exe), и я хочу остаться в том же окне. Это возможно?
Став

22

START filename.lnk должен сделать трюк

Пока нет exe-файла с таким же именем, как у ярлыка, вы можете опустить .lnk, так что просто START filename


Пока файл .lnk находится в среде пути для Windows, он будет работать. в противном случае нет. Вы можете запустить любую службу с помощью win + R ... net start msiserver .. например, запустить службу установщика Windows .. или любую консоль MS с помощью run ... xxx.msc (они расположены в папке windows32 и в PATH)
Тони Стюарт Sunnyskyguy EE75

5
На самом деле, чтобы работать, мне нужно было сделать START «Имя нового окна», «filename.lnk». Только с одним аргументом START просто создавал новое окно командной строки, названное в честь первого параметра. См. Связанный по StackOverflow: stackoverflow.com/questions/6139365/…
Рафаэль Оливейра

2

Вышеуказанные решения не работали для меня в 2017 году, поэтому я немного поэкспериментировал.

Оказывается, что Windows (по крайней мере 10) делает различие между ярлыками, которые ссылаются на локальный путь, и ярлыками, которые являются URL. Я обнаружил, что

  • локальные пути используют суффикс .lnk
  • URL-пути имеют суффикс .url

Таким образом, ярлык /superuser//будет иметь суффикс, в .urlто время как ярлык для C:\Windowsили к специальным местоположениям, как Control Panelи суффикс .lnk.

Если вы хотите выполнить ярлык, просто введите shortcut.suffixв командной строке cmd .suffixсуффикс в соответствии с приведенным выше правилом. Сначала необходимо cdперейти в папку, содержащую ваш ярлык, или ввести полный путь к файлу. В твоем случае

%userprofile%\Desktop\shortcut.suffix

введите либо диалоговое окно запуска (вызывается через Win + R), либо приглашение cmd сделает свое дело.

Окна и это неудобства.


0

Сначала найдите расположение ярлыка, с которого вы запускаете оболочку cmd.exe. Щелкните правой кнопкой мыши по ярлыку и выберите «Свойства». Посмотрите на вкладку «Общие» и скопируйте значение «Местоположение:».

Используйте ярлык для запуска окна сброса.

START "" "C:\Users\lit\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu\cmd.exe.lnk" /K CD /D "%CD%" & EXIT
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.