我的powershell脚本:
$dst = 'C:\Temp'
#Get all folders in $dst
$folders = Get-ChildItem $dst | ?{ $_.PSIsContainer }
foreach($folder in $folders)
{
$cnt = (Get-ChildItem -filter *.txt $folder | Measure-Object).Count
$base = ($folder.FullName -split " \[.*\]$")[0]
$newname = $("{0} [{1}]" -f $base,$cnt)
Write-Host $folder.FullName "->" $newname
Rename-Item $folder.FullName $newname
}
Run Code Online (Sandbox Code Playgroud)
问题
在我的第一次运行中我得到了这个:
PS C:\Temp> C:\Temp\RenameFolders.ps1
C:\Temp\m1 -> C:\Temp\m1 [1]
Run Code Online (Sandbox Code Playgroud)
在我的第二次运行中我得到了这个:
PS C:\Temp> C:\Temp\RenameFolders.ps1
C:\Temp\m1 [1] -> C:\Temp\m1 [0]
Rename-Item : Cannot rename because item at 'C:\Temp\m1 [1]' does not exist.
At …Run Code Online (Sandbox Code Playgroud) 我有一个PowerShell脚本,我想在2台不同的独立机器上运行.在安装了SDK的Windows 8.1上,我发出命令:
makecert -r -pe -n "CN=My Root Authority" -ss CA -sr CurrentUser ^
-a sha1 -sky signature -cy authority -sv CA.pvk CA.cer
Run Code Online (Sandbox Code Playgroud)
我回来了:
Error: Can't access the key of the subject ('CA.pvk')
Failed
Run Code Online (Sandbox Code Playgroud)
CA.pvk已创建,但不是CA.cer
有任何想法吗?
谢谢,杰夫
$mycolorparams = "-foregroundcolor red -backgroundcolor black"
write-host "I want this foreground in Red and background in black" $mycolorparams
Run Code Online (Sandbox Code Playgroud)
大家好,
这让我抓狂。当我使用 write-host 时,cmdlet 将所有内容返回为字符串:
“我希望前景为红色,背景为黑色 -前景色红色 -背景色黑色”。
不是具有红色文本和黑色背景的实际字符串。
最糟糕的是,这对我来说一直有效,直到我更改了代码中的 var 名称。我不知道从那以后发生了什么改变。我怀疑这与引号有关,因为单引号吐出字符串,双引号读取变量。但是在 text 和 var 上尝试了大量的 single 和 double 变化之后,结果是相同的,只是字符串输出。
在过去的一个小时里,我一直在网上搜寻,但没有运气,有很多例子,但我找不到具体问题的答案。任何帮助表示赞赏,谢谢。
我对Powershell比较陌生,所以现在真的不知道该怎么回事.我正在尝试从subversion存储库下载文件并获得(401)Unauthorized"错误.我能够使用IE在同一台计算机上使用完全相同的凭据登录该站点并下载该文件.
$source = "http://repository/folder/File.exe"
$destination = "E:\Temp\File.exe"
$wc = New-Object System.Net.WebClient
$user="user"
$pwd=convertto-securestring -string "password" -AsPlainText -force
$creds=New-Object System.Management.Automation.PSCredential -ArgumentList $user, $pwd
$wc.Credentials = New-Object System.Net.NetworkCredential ($user, $Creds.GetNetworkCredential().Password,"DOMAIN")
$download=$wc.DownloadFile($source, "$destination")
Run Code Online (Sandbox Code Playgroud)
使用"2"参数调用"DownloadFile"的异常:"远程服务器返回错误:(401)未经授权."
如果这是跨平台问题的任何想法?以及如何解决这个问题?
谢谢