Cla*_*lam 4 powershell hard-drive batch
我是 powershell 的新手,我问自己如何将以下变量放入 powershell 脚本中?我知道如何在 powershell 中设置变量,但我不知道如何获取"%~dpn0".
set pgm=%~n0
set log=%~dpn0.log
set csv=%~dpn0.csv
set dir=%~dp0users
set txt=%~n0.txt
set fix=%~dpn0.fix
Run Code Online (Sandbox Code Playgroud)
批量%~dpn0返回当前执行脚本的驱动器、路径和名称。
要在 PowerShell 脚本中执行相同操作,您可以使用$MyInvocation.MyCommand.Definition.
例如:
$scriptPathAndName = $MyInvocation.MyCommand.Definition
write-host $scriptPathAndName
Run Code Online (Sandbox Code Playgroud)
要获取脚本的路径,您可以使用:
$scriptPath = split-path -parent $MyInvocation.MyCommand.Definition
write-host $scriptPath
Run Code Online (Sandbox Code Playgroud)
(注意:在 Powershell v3+ 中,您可以通过引用预定义变量来获取脚本的路径(不带名称)$PSScriptRoot)
只获取脚本的名称:
$scriptName = split-path -leaf $MyInvocation.MyCommand.Definition
write-host $scriptName
Run Code Online (Sandbox Code Playgroud)
有关 Split-Path 选项的更多信息:https : //technet.microsoft.com/en-us/library/hh849809.aspx
| 归档时间: |
|
| 查看次数: |
5256 次 |
| 最近记录: |