0
안녕하세요 드라이브 문자를 지정하고 서식 지정하고 드라이브에 필요한 할당 단위 크기를 지정하는 PS 스크립트를 만들려고했습니다. 스크립트는 다음과 같이 간다값 ""을 "System.Char"유형으로 변환 할 수 없습니다.
DiskNumber,DriveLetter,NewFileSystemLabel,AllocationUnitSize
7,N,Drive_N,4096
7,N,Drive_N,4096
:
########################
# New Partition/Drive letter/Format/Label/Allocation
Measure-Command{
Clear
$Datalist = Import-Csv "H:\My Documents\My Powershell\Storage_Data_Input.txt"
$ServerList = Get-Content "H:\My Documents\My Powershell\serverlist.txt"
ForEach ($Item in $Datalist){
$DiskNumber=$($Item.DiskNumber)
$driveletter=$($Item.DriveLetter)
$NewFileSystemLabel=$($Item.NewFileSystemLabel)
$AllocationUnitSize=$($Item.AllocationUnitSize)
$c=Get-Credential Domain\Userid
foreach ($ServerName in $ServerList){
Write-Host "Setting Drive_"$DriveLetter" on server "$ServerName""
Invoke-Command -ComputerName $ServerName -Credential $c -ScriptBlock {
Stop-Service -Name ShellHWDetection
New-Partition -DiskNumber "$DiskNumber" -UseMaximumSize -DriveLetter "$driveletter" | Format-Volume -FileSystem NTFS -NewFileSystemLabel "$NewFileSystemLabel" -AllocationUnitSize "$AllocationUnitSize" -Force -Confirm:$false
Start-Service -Name ShellHWDetection
}}}}
을 실행하는 다음과 같은 오류 방법 :
Cannot process argument transformation on parameter 'DriveLetter'. Cannot convert value "" to type "System.Char". Error: "String must be exactly one character long."
+ CategoryInfo : InvalidData: (:) [New-Partition], ParameterBindin...mationException
+ FullyQualifiedErrorId : ParameterArgumentTransformationError,New-Partition
+ PSComputerName : Servername
나는이 테스트 havent 한하지만 난 그렇게 대단히 감사합니다, 단지 대신 "Drive_N" – Kiran