2013-09-09 07:35:57 +00:00
|
|
|
# shell
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2016-04-21 22:39:12 +00:00
|
|
|
> Manage files and URLs using their default applications.
|
2016-04-21 22:35:29 +00:00
|
|
|
|
2020-04-07 16:55:01 +00:00
|
|
|
Process: [Main](../glossary.md#main-process), [Renderer](../glossary.md#renderer-process) (non-sandboxed only)
|
2016-11-03 17:26:00 +00:00
|
|
|
|
2013-08-14 22:43:35 +00:00
|
|
|
The `shell` module provides functions related to desktop integration.
|
|
|
|
|
2015-08-29 05:28:30 +00:00
|
|
|
An example of opening a URL in the user's default browser:
|
2013-08-14 22:43:35 +00:00
|
|
|
|
|
|
|
```javascript
|
2018-09-13 16:10:51 +00:00
|
|
|
const { shell } = require('electron')
|
2015-08-29 05:28:30 +00:00
|
|
|
|
2016-07-26 01:39:25 +00:00
|
|
|
shell.openExternal('https://github.com')
|
2013-08-14 22:43:35 +00:00
|
|
|
```
|
|
|
|
|
2020-04-07 16:55:01 +00:00
|
|
|
**Note:** While the `shell` module can be used in the renderer process, it will not function in a sandboxed renderer.
|
|
|
|
|
2015-08-29 05:28:30 +00:00
|
|
|
## Methods
|
|
|
|
|
|
|
|
The `shell` module has the following methods:
|
|
|
|
|
|
|
|
### `shell.showItemInFolder(fullPath)`
|
2013-08-14 22:43:35 +00:00
|
|
|
|
|
|
|
* `fullPath` String
|
|
|
|
|
2016-09-24 23:59:30 +00:00
|
|
|
Show the given file in a file manager. If possible, select the file.
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2019-11-08 07:08:43 +00:00
|
|
|
### `shell.openPath(path)`
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2019-11-08 07:08:43 +00:00
|
|
|
* `path` String
|
|
|
|
|
2020-08-18 07:55:16 +00:00
|
|
|
Returns `Promise<String>` - Resolves with a string containing the error message corresponding to the failure if a failure occurred, otherwise "".
|
2016-09-24 23:59:30 +00:00
|
|
|
|
|
|
|
Open the given file in the desktop's default manner.
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2019-01-15 04:35:21 +00:00
|
|
|
### `shell.openExternal(url[, options])`
|
|
|
|
|
|
|
|
* `url` String - Max 2081 characters on windows.
|
|
|
|
* `options` Object (optional)
|
2019-06-27 21:51:18 +00:00
|
|
|
* `activate` Boolean (optional) _macOS_ - `true` to bring the opened application to the foreground. The default is `true`.
|
|
|
|
* `workingDirectory` String (optional) _Windows_ - The working directory.
|
2019-01-15 04:35:21 +00:00
|
|
|
|
|
|
|
Returns `Promise<void>`
|
|
|
|
|
|
|
|
Open the given external protocol URL in the desktop's default manner. (For example, mailto: URLs in the user's default mail agent).
|
2016-02-03 07:01:00 +00:00
|
|
|
|
2020-09-02 17:32:33 +00:00
|
|
|
### `shell.moveItemToTrash(fullPath[, deleteOnFail])` _Deprecated_
|
2013-08-14 22:43:35 +00:00
|
|
|
|
|
|
|
* `fullPath` String
|
2019-08-13 19:31:53 +00:00
|
|
|
* `deleteOnFail` Boolean (optional) - Whether or not to unilaterally remove the item if the Trash is disabled or unsupported on the volume. _macOS_
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2019-08-13 19:31:53 +00:00
|
|
|
Returns `Boolean` - Whether the item was successfully moved to the trash or otherwise deleted.
|
2016-09-24 23:59:30 +00:00
|
|
|
|
2020-09-02 17:32:33 +00:00
|
|
|
> NOTE: This method is deprecated. Use `shell.trashItem` instead.
|
|
|
|
|
2015-08-29 05:28:30 +00:00
|
|
|
Move the given file to trash and returns a boolean status for the operation.
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2020-09-02 17:32:33 +00:00
|
|
|
### `shell.trashItem(path)`
|
|
|
|
|
|
|
|
* `path` String - path to the item to be moved to the trash.
|
|
|
|
|
|
|
|
Returns `Promise<void>` - Resolves when the operation has been completed.
|
|
|
|
Rejects if there was an error while deleting the requested item.
|
|
|
|
|
|
|
|
This moves a path to the OS-specific trash location (Trash on macOS, Recycle
|
|
|
|
Bin on Windows, and a desktop-environment-specific location on Linux).
|
|
|
|
|
2015-08-29 05:28:30 +00:00
|
|
|
### `shell.beep()`
|
2013-08-14 22:43:35 +00:00
|
|
|
|
2013-08-29 14:37:51 +00:00
|
|
|
Play the beep sound.
|
2016-07-27 07:47:24 +00:00
|
|
|
|
|
|
|
### `shell.writeShortcutLink(shortcutPath[, operation], options)` _Windows_
|
|
|
|
|
|
|
|
* `shortcutPath` String
|
2016-09-27 05:12:51 +00:00
|
|
|
* `operation` String (optional) - Default is `create`, can be one of following:
|
2016-07-27 07:47:24 +00:00
|
|
|
* `create` - Creates a new shortcut, overwriting if necessary.
|
|
|
|
* `update` - Updates specified properties only on an existing shortcut.
|
|
|
|
* `replace` - Overwrites an existing shortcut, fails if the shortcut doesn't
|
|
|
|
exist.
|
2016-09-28 07:00:01 +00:00
|
|
|
* `options` [ShortcutDetails](structures/shortcut-details.md)
|
2016-07-27 07:47:24 +00:00
|
|
|
|
2017-11-29 10:38:35 +00:00
|
|
|
Returns `Boolean` - Whether the shortcut was created successfully.
|
2016-09-24 23:59:30 +00:00
|
|
|
|
|
|
|
Creates or updates a shortcut link at `shortcutPath`.
|
2016-07-27 07:47:24 +00:00
|
|
|
|
|
|
|
### `shell.readShortcutLink(shortcutPath)` _Windows_
|
|
|
|
|
2016-08-26 00:26:52 +00:00
|
|
|
* `shortcutPath` String
|
2016-08-25 21:43:06 +00:00
|
|
|
|
2016-10-04 22:35:23 +00:00
|
|
|
Returns [`ShortcutDetails`](structures/shortcut-details.md)
|
2016-09-24 23:59:30 +00:00
|
|
|
|
|
|
|
Resolves the shortcut link at `shortcutPath`.
|
2016-07-27 07:47:24 +00:00
|
|
|
|
|
|
|
An exception will be thrown when any error happens.
|