从这个对问题Windows SSH 的回答:“私钥”的权限太开放 ,我知道命令
Icacls "C:\Users\XX\Path\To\File" /Grant:r "%Username%":"(R)"
但在我的环境(Windows 10)中它不起作用:
Invalid parameter "%Username%"
为什么会发生以及如何解决?
从这个对问题Windows SSH 的回答:“私钥”的权限太开放 ,我知道命令
Icacls "C:\Users\XX\Path\To\File" /Grant:r "%Username%":"(R)"
但在我的环境(Windows 10)中它不起作用:
Invalid parameter "%Username%"
为什么会发生以及如何解决?
设置 var=whoami
icacls "C:\Users\test" /Grant:r %var%:"(R)"
根据文档,有必要通知用户获得许可:
Icacls "C:\Users\XX\Path\To\File" /Grant:r takeshi:"(R)"
但是上面的例子只适用于通过CMD
. 出现的消息意味着环境变量为空。为什么我不能告诉你。
如果您正在使用PowerShell
,则必须更改$Username
变量,在我的示例中:
icacls.exe "C:\Temp\test.txt" /Grant:r "$Username":"(R)"
在Powershell
我得到以下回复:
1 fichiers correctement traités ; échec du traitement de 0 fichiers