salt.states.win_shortcut#
State module for creating shortcuts on Windows. Handles file shortcuts (.lnk) and url shortcuts (.url). Allows for the configuration of icons and hot keys on file shortcuts. Changing the icon and hot keys are unsupported for url shortcuts.
New in version 3005.
- salt.states.win_shortcut.present(name, arguments='', description='', hot_key='', icon_location='', icon_index=0, target='', window_style='Normal', working_dir='', backup=False, force=False, make_dirs=False, user=None)#
Create a new shortcut. This can be a file shortcut (
.lnk) or a url shortcut (.url).- Parameters:
name (str) -- The full path to the shortcut
target (str) -- The full path to the target
arguments (str, optional) -- Any arguments to be passed to the target
description (str, optional) -- The description for the shortcut. This is shown in the
Commentfield of the dialog box. Default is an empty stringhot_key (str, optional) --
A combination of hot Keys to trigger this shortcut. This is something like
Ctrl+Alt+D. This is shown in theShortcut keyfield in the dialog box. Default is an empty string. Available options are:Ctrl
Alt
Shift
Ext
icon_index (int, optional) -- The index for the icon to use in files that contain multiple icons. Default is 0
icon_location (str, optional) -- The full path to a file containing icons. This is shown in the
Change Icondialog box by clicking theChange Iconbutton. If no file is specified and a binary is passed as the target, Windows will attempt to get the icon from the binary file. Default is an empty stringwindow_style (str, optional) --
The window style the program should start in. This is shown in the
Runfield of the dialog box. Default isNormal. Valid options are:Normal
Minimized
Maximized
working_dir (str, optional) -- The full path to the working directory for the program to run in. This is shown in the
Start infield of the dialog box.backup (bool, optional) -- If there is already a shortcut with the same name, set this value to
Trueto backup the existing shortcut and continue creating the new shortcut. Default isFalseforce (bool, optional) -- If there is already a shortcut with the same name and you aren't backing up the shortcut, set this value to
Trueto remove the existing shortcut and create a new with these settings. Default isFalsemake_dirs (bool, optional) -- If the parent directory structure does not exist for the new shortcut, create it. Default is
Falseuser (str, optional) -- The user to be the owner of any directories created by setting
make_dirstoTrue. If no value is passed Salt will use the user account that it is running under. Default is an empty string.
- Returns:
- A dictionary containing the changes, comments, and result of the
state
- Return type:
Example:
KB123456: wusa.installed: - source: salt://kb123456.msu # Create a shortcut and set the ``Shortcut key`` (``hot_key``) new_shortcut: shortcut.present: - name: C:\path\to\shortcut.lnk - target: C:\Windows\notepad.exe - hot_key: Ctrl+Alt+N # Create a shortcut and change the icon to the 3rd one in the icon file new_shortcut: shortcut.present: - name: C:\path\to\shortcut.lnk - target: C:\Windows\notepad.exe - icon_location: C:\path\to\icon.ico - icon_index: 2 # Create a shortcut and change the startup mode to full screen new_shortcut: shortcut.present: - name: C:\path\to\shortcut.lnk - target: C:\Windows\notepad.exe - window_style: Maximized # Create a shortcut and change the icon new_shortcut: shortcut.present: - name: C:\path\to\shortcut.lnk - target: C:\Windows\notepad.exe - icon_location: C:\path\to\icon.ico # Create a shortcut and force it to overwrite an existing shortcut new_shortcut: shortcut.present: - name: C:\path\to\shortcut.lnk - target: C:\Windows\notepad.exe - force: True # Create a shortcut and create any parent directories if they are missing new_shortcut: shortcut.present: - name: C:\path\to\shortcut.lnk - target: C:\Windows\notepad.exe - make_dirs: True