CMD/BAT - [решено] Создание ярлыков через командную строку

Ответить
Аватара пользователя
Svnkill

CMD/BAT - [решено] Создание ярлыков через командную строку

Сообщение Svnkill »

В общем, как создать ярлыки файлов (Лежащий в одном каталоге с скриптом).

И можно ли сразу из скрипта задать данные "Объект" как свойствах ярлыков из проводника задают, к примеру чтобы добавить дополнительную команды.



P.s: Можно и другой язык vbs или AutoIt.
Аватара пользователя
Казбек

Re: CMD/BAT - [решено] Создание ярлыков через командную строку

Сообщение Казбек »

Цитата Svnkill:



надо через CMD создать ярлыки всех файлов хранящихся в папки D:\App.
CMD/BAT - [решено] Создание ярлыков через командную строку




В cmd в человеческом виде, без гибридов сделать это не получится. Но есть простое решение тоже с консолью:
NirCmd Command Reference - shortcut
.



Есть так же вариант с
MKLink
.
Аватара пользователя
Svnkill

Re: CMD/BAT - [решено] Создание ярлыков через командную строку

Сообщение Svnkill »

Цитата Казбек:



В cmd в человеческом виде, без гибридов сделать это не получится.
CMD/BAT - [решено] Создание ярлыков через командную строку




VBS Можно?
Аватара пользователя
Казбек

Re: CMD/BAT - [решено] Создание ярлыков через командную строку

Сообщение Казбек »

Цитата Svnkill:



VBS Можно?
CMD/BAT - [решено] Создание ярлыков через командную строку




How to create a desktop shortcut with the Windows Script Host




Вариант на PowerShell:



Код:

Код: Выделить всё

$shortcutPath = "C:\Users\User\Documents\Apps"
$wshShell = New-Object -ComObject "WScript.Shell"
Get-ChildItem (Join-Path $shortcutPath "*.exe") | ForEach-Object {
  $lnkFilename = Join-Path $shortcutPath ("{0}.lnk" -f [IO.Path]::GetFilenameWithoutExtension($_.FullName))
  $shortcut = $wshShell.CreateShortcut($lnkFilename)
  $shortcut.TargetPath = $_.FullName
  $shortcut.Save()
}

"C:\Users\User\Documents\Apps" - путь к вашей папки

"*.exe" - маска с нужными типами файлов[/i]



Пример выполнения

[spoiler]Изображение[/spoiler]
Аватара пользователя
megaloman

Re: CMD/BAT - [решено] Создание ярлыков через командную строку

Сообщение megaloman »

vbs

[spoiler]Код:
[/spoiler]

Код: Выделить всё

inDir = "Z:\App"
Set FSO = CreateObject("Scripting.FileSystemObject")
Set oShell = CreateObject("WScript.Shell")
DeskTopPath = oShell.SpecialFolders("AllUsersDesktop")
Set Folds = FSO.GetFolder(inDir)
Set Files = Folds.Files
For Each jf In Files
    Set oShortCut = oShell.CreateShortcut(DeskTopPath + "\" + jf.Name + ".lnk")
    oShortCut.TargetPath = jf.Path
    oShortCut.Save
Next





Использовал источник
Аватара пользователя
Woodskil

Re: CMD/BAT - [решено] Создание ярлыков через командную строку

Сообщение Woodskil »

Линк на файл:

mklink "C:\Users\Control\Desktop\2.lnk" "C:\Users\Control\Desktop\1.exe"



Линк на папку:

mklink /D "C:\Users\Control\Desktop\folder11.lnk" "C:\Users\Control\Desktop\11"
Аватара пользователя
Vadikan

Re: CMD/BAT - [решено] Создание ярлыков через командную строку

Сообщение Vadikan »

Woodskil, символическая ссылка - не то же самое, что ярлык. Ярлык - это файл с атрибутами ярлыка, а mklink делает ссылку в файловой системе. Даже создав ее с расширением lnk, в свойствах не будет то же самое, что при создании ярлыка.
Ответить

Вернуться в «Скриптовые языки администрирования Windows»