是可以从Powershell只读模式启动Excel
我使用Invoke-Item "some-file.xlsx"
来启动Excel并打开一个文件。 现在我想以只读模式打开这个文件。 这可能从PowerShell?
为了清除,我不打算打开Excel工作表,并从它读取数据到PowerShell脚本,该脚本旨在帮助用户find一个文件,并打开它。
Invoke-item
只允许文件的默认操作。
要以只读方式打开文件,可以:
-
在文件上设置只读属性,启动文件,取消只读属性,
attrib +r "some-file.xlsx" Invoke-Item "some-file.xlsx" attrib -r "some-file.xlsx"
要么
-
直接调用excel,并将/ r作为命令文件
$xl = (Get-ItemProperty -Path HKCR:\Applications\EXCEL.EXE\Shell\OpenAsReadOnly\command).'(default)' $fle = '"some-file.xlsx"' & $xl $fle
检查从Powershell执行存储在variables中的命令以获取适用于您的语法
只读被定义为文件上的一个属性。 所以我的build议是将文件设置为只读,然后用Invoke-item打开正常。 或者,您可以使用代码来设置文件属性。 以下应该做的伎俩:
set-itemproperty "some-file.xlsx" -Name Attributes -Value "ReadOnly"
参考:
将文件设置为只读的步骤
- 确保该文件未在Excel中打开。
- 在Windows开始菜单上,指向程序,指向附件,然后单击Windows资源pipe理器。
- 在浏览窗口中,打开包含该文件的驱动器或文件夹。
- 点击文件名称。
- 在文件菜单上,单击属性。
- 点击常规标签。
- select只读checkbox。
参考: