windows - 在 Windows PowerShell 中使用文件打开 notepad++
问题描述
我想在 Windows PowerShell 中使用 notepad++ 打开位于网络驱动器上的文本文件。
我创建以下 PS1 文件
Set-Location -Path "C:\Program Files\Notepad++\"
$Targetfile="\\server\path\myfile.txt"
.\Notepad++.exe $Targetfile
错误信息:找不到文件
我可以在 Windows PowerShell 中运行以下命令吗(在 PowerShell 中运行带有路径的 exe 文件)
.\"C:\Program Files\Notepad++\notepad++.exe" "\\server\path\myfile.txt"
解决方案
笔记:
下面的答案包含有关从 PowerShell 调用可执行文件的一般信息。
您的具体问题可能是以下之一:
Notepad++.exe
目录中可能缺少可执行文件C:\Program Files\Notepad++
目标文件可能不存在或服务器可能无法访问。
请注意,如果该路径是完整(绝对)路径(如您的第二次尝试),则在可执行路径前加上.\
(指当前目录中的文件)在逻辑上毫无意义,并且在实践中失败。
.\"C:\Program Files\Notepad++\notepad++.exe"
如果Notepad++.exe
位于$env:PATH
环境变量中列出的目录之一中:
# Note: NO ".\" prefix, which is only needed to invoke an executable
# located in the *current directory*.
Notepad++.exe $TargetFile
如果您需要通过完整路径引用它,则无需使用Set-Location
后跟.\
- 前缀的调用(除非您确实需要将工作目录作为 Notepad++ 的安装目录)。
要直接通过完整路径调用它,请使用&
调用运算符:
& "C:\Program Files\Notepad++\notepad++.exe" $TargetFile
请注意,在这种情况下这&
是必需的,因为您的可执行路径被引用,因为包含嵌入的空格,这是必要的。如上面的第一个命令所示,&
如果可执行名称或路径未加引号(并且不包含变量引用),则它是可选的 - 请参阅此答案以获取更多信息。
推荐阅读
- c - 你可以将非ASCII字符传递给argv吗?
- javascript - Apple 脚本 - GetElementByID 值 Math.random()
- java - CreationalContext:自定义 Bean 是否应该始终从其 create() 方法调用 push()?
- python - Python - 将“Sheet2”从 xlsx 文件复制到另一个 xlsx 文件
- javascript - 如何在Javascript中对数字求和
- angular - 如何在 ngClass 条件中包含带有 angular2/4/5 的字符串的模板变量?
- php - 为什么 jQuery 从 php 解析的 Input 标签不起作用?
- firebase - Firestore onWrite 触发器没有身份验证信息
- python - Python Grade Book Assignment,写作和阅读记录,以及字母成绩的总和,无法得到正确的输出
- android - 库没有被导入