Измените метод открытия файла по умолчанию через Powershell
Принцип модификации
Детали скрипта:
описание:
По крайней мере, в Windows 10 (1803), даже если установлен метод открытия файлов по умолчанию, есть некоторые файлы, которые не могут быть связаны с указанной программой, поэтому этот сценарий использует операцию реестра для решения этой проблемы.
Как пользоваться:
.Powershell_reg.ps1 ` -extensioname «ps1» ` -vsico «C:Program FilesMicrosoft VS Coderesourcesappresourceswin32powershell.ico» ` -vspath ‘»C:Program FilesMicrosoft VS CodeCode.exe» «%1″‘
список параметров
extensioname | Расширение файла | css | Не содержит «.» |
vsico | Значок файла | C:…powershell.ico | Рекомендуется использовать собственный значок VSCode |
vspath | Программа открытия файлов по умолчанию | “C:…Code.exe” “%1” | В значении параметра есть («)! И»% 1 «нельзя опускать |
Известные проблемы
Поскольку автор не имеет глубоких знаний о реестре, в некоторых ситуациях, даже если сценарий запущен, он не действует. Когда возникает эта проблема, проверьте
Простая автоматизация. Часть 1. Переименовываем файлы пачкой с помощью Windows PowerShell.
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerFileExts.xxx
Меры предосторожности
Этот скрипт не сертифицирован строго и вносит изменения в реестр, пожалуйстаИспользуйте с осторожностью。
ссылка
заявление
В этой статье используетсяЛицензионное соглашение Creative Commons Attribution-Non-Commercial Use-Same Way Sharing 2.5 в материковом КитаеДля разрешения опубликовано вCSDNс участиемБлог сад, Читатели могут перепечатать, но вы должны сохранить это заявление без согласия автора и дать исходную ссылку на видном месте на странице статьи! Прошу уважения от читателей / сканеров авторское право
Интеллектуальная рекомендация
mapReduce-slice (разделить)
1. Связь между маской карты и фрагментом. Количество задач карты определяется количеством срезов.Существует столько задач карты, сколько срезов. Срез — это логическая концепция, которая относится к ди.
Источник: russianblogs.com
Invoke-Item
Выполняет действие по умолчанию для указанного элемента.
Синтаксис
Invoke-Item [-Path] [-Filter ] [-Include ] [-Exclude ] [-Credential ] [-WhatIf] [-Confirm] []
Invoke-Item -LiteralPath [-Filter ] [-Include ] [-Exclude ] [-Credential ] [-WhatIf] [-Confirm] []
Описание
Командлет Invoke-Item выполняет действие по умолчанию для указанного элемента. Например, он запускает исполняемый файл или открывает файл документа в приложении, связанном с данным типом файла.
Как включить выполнение сценариев PowerShell в Windows 10
Действие по умолчанию зависит от типа элемента и определяется поставщиком PowerShell, предоставляющим доступ к данным.
Примеры
Пример 1. Открытие файла
Пример 2. Открытие всех файлов определенного типа
Параметры
-Confirm
Запрос подтверждения перед выполнением командлета.
Type: | SwitchParameter |
Aliases: | cf |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Чтобы олицетворить другого пользователя или повысить уровень учетных данных при выполнении этого командлета, используйте Invoke-Command.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Exclude
Указывает в качестве массива строк элемент или элементы, которые этот командлет исключает в операции. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например *.txt . Можно использовать подстановочные знаки. Параметр Exclude действует только в том случае, если команда включает содержимое элемента, например C:Windows* , где подстановочный знак указывает содержимое C:Windows каталога.
Type: | String [ ] |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Filter
Указывает фильтр для указания параметра Path . Поставщик FileSystem — единственный установленный поставщик PowerShell, который поддерживает использование фильтров. Синтаксис языка фильтра FileSystem можно найти в about_Wildcards. Фильтры более эффективны, чем другие параметры, так как поставщик применяет их, когда командлет получает объекты, а не фильтрует объекты PowerShell после их извлечения.
Type: | String |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Include
Указывает в качестве массива строк элемент или элементы, которые этот командлет включает в операцию. Значение этого параметра определяет параметр Path. Введите элемент пути или шаблон, например «*.txt» . Можно использовать подстановочные знаки. Параметр Include действует только в том случае, если команда включает содержимое элемента, например C:Windows* , где подстановочный знак указывает содержимое C:Windows каталога.
Type: | String [ ] |
Position: | Named |
Default value: | None |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Указывает путь к одному или нескольким расположениям. Значение LiteralPath используется точно так же, как оно введено. Никакие символы не интерпретируются как знаки подстановки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки позволяют PowerShell не интерпретировать какие-либо символы как escape-последовательности.
Type: | String [ ] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
Указывает путь к выбранному элементу. Можно использовать подстановочные знаки.
Type: | String [ ] |
Position: | |
Default value: | None |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-WhatIf
Показывает, что произойдет при запуске командлета. Командлет не выполняется.
Type: | SwitchParameter |
Aliases: | wi |
Position: | Named |
Default value: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
В этот командлет можно передать по конвейеру строку, содержащую путь.
Выходные данные
None
Этот командлет не возвращает собственные выходные данные, но вызываемые им элементы могут возвращать собственные выходные данные.
Примечания
PowerShell включает следующие псевдонимы для Invoke-Item :
Этот командлет предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в данном сеансе, введите командлет Get-PSProvider . Дополнительные сведения см. в разделе about_Providers.
Связанные ссылки
Обратная связь
Отправить и просмотреть отзыв по
Источник: learn.microsoft.com
Открыть файл в выбранном приложении в PowerShell
Я хотел бы открыть файл, используя cmdln в PowerShell с определенным приложением.
В моем случае у меня есть файл scripts.js который я хотел бы открыть в Notepad++ но который обычно открывался бы в обычном notepad.exe если бы я сделал это: Invoke-Item.scripts.js
Что делать, чтобы открыть этот файл в Notepad++ ?
Используя Start-Process, вы можете:
$FileLocation = ‘C:temptestscripts.js’ Start-Process notepad++ $FileLocation
Используйте оператор вызова и передайте файл в качестве аргумента программе, которую вы хотите открыть, с помощью:
https://techarks.ru/qa/powershell/otkrit-fajl-v-vibrannom-pri-P1/» target=»_blank»]techarks.ru[/mask_link]