如何从 Powershell 命令行在 Notepad++ 中打开文件?
6 回答
在 powershell 中,我可以简单地使用 start 并获得一般结果
用notepad++打开一个python文件就是我所做的。
Start notepad++ ex1.py
假设您与 .py 文件位于同一目录中,这将启动 notepad++ 并加载文件 ex1.py。您可以通过添加完整路径名来更改它
start notepad++ c:\users\you\desktop\files\ex1.py
希望这可以帮助!
因为默认路径包含空格,所以必须引用 exe 的路径。但是,因为 PowerShell 也是一种脚本语言。一个字符串本身被简单地评估为一个字符串,例如:
C:\ PS> 'Hello world'
Hello world
因此,您必须告诉 PowerShell 您要调用由字符串命名的命令。为此,您使用呼叫运算符,&
例如:
C:\ PS> & 'C:\Program Files (x86)\Notepad++\notepad++.exe'
或者如果记事本++ 在您的路径中:
C:\ PS> notepad++
或者如果您与 exe 位于同一目录中:
C:\ PS> .\notepad++
使用 Notepad++ 打开并在当前路径中创建一个新的空文件
start notepad++ newFile.txt
使用现有文件打开 Notepad++
start notepad++ apples.txt
指定路径并打开多个文件
start notepad++ fruits/apples.txt, fruits/oranges.txt, package.json
推断先前的答案并将它们捆绑在一个整洁的蝴蝶结中:如果要打开路径或名称中包含空格的文件:
. 'C:\Program Files (x86)\Notepad++\notepad++.exe' 'C:\Temp\File With Spaces.txt'
或者
& 'C:\Program Files (x86)\Notepad++\notepad++.exe' 'C:\Temp\File With Spaces.txt'
也可以将其设置为别名:
Set-Alias -Value 'C:\Program Files (x86)\Notepad++\notepad++.exe' -Name 'NotePad'
$FileWithSpaces = 'C:\T e m p\File With Spaces.txt'
NotePad $FileWithSpaces
此处的第一行可以复制到您的 $Profile .ps1 文件中(其中一个),因此您无需在每个新的 PS 实例中继续使用 Set-Alias。
我知道这是一个老问题,但我偶然发现了一些解决方法,而且非常简单。如果您通过Chocolatey安装和维护 Notepad++ (想想 apt-get for Windows,但构建在 NuGet 之上),那么您将获得一个可以从命令行调用的 shim。
cinst notepad++
即使您已经安装了现有的记事本,您仍然可以从 Chocolatey“安装”它,它会拉入现有安装并维护它。
我尽可能多地使用 Chocolatey,因为您可以一口气更新所有内容。
之后,从 PowerShell 中编辑内容变得轻而易举。就像我的 PowerShell 配置文件一样:
notepad++ $PROFILE
希望这对某人或几个人有所帮助!
就我而言,我想以文件作为参数启动 Notepad++,并以管理员身份打开。我想打开其中一个 PowerShell 配置文件。我不得不使用以下命令变体:
start-process -Verb runas -filepath "C:\Program Files (x86)\Notepad++\notepad++.exe" "`"$($PROFILE.AllUsersAllHosts)`""
所有其他变体都不起作用,我认为是由于要打开的文件路径中有空格。所以,你必须逃避"
as:
"He said `"This is fun.`""