2017-10-12 80 views
0

我使用PowerShell和BMC自动化,我创建了一个PowerShell脚本来创建一个文件夹:文件夹创建于BMC通过PowerShell中/窗口创建文件不是文件夹

$directoryname= "D:\sysdba" 
$DoesFolderExist = Test-Path $directoryname 
$null = if (!$DoesFolderExist){MKDIR "$directoryname"} 

$directoryname= "D:\temp" 
$DoesFolderExist = Test-Path $directoryname 
$null = if (!$DoesFolderExist){MKDIR "$directoryname"} 

我使用下面的命令来创建文件夹

<commands> 
    <command>\\Path\SPUpgrade\Create_Folder.ps1</command> 
</commands> 

但它创建一个文件夹,而不是:

enter image description here

主机服务器上

任何想法为什么?我很困惑,为什么不创建文件夹和为什么文件

+0

不知道为什么mkdir不再工作,但你可以尝试用下面的代码替换它:'new-item -Path $ directoryname -ItemType Directory' –

+0

我无法用你的代码重现这种行为。你能确认它确实是你生成'sysdba'文件的脚本,而不是同时运行的其他进程吗?你可以通过改变从'D:\ sysdba'到'D:\ foo'的路径来测试它,看看是否发生了同样的情况。 –

+0

它可能是一个别名?尝试MD或在这里提供的建议。 – VGSandz

回答

1

从Powershell使用mkdir不鼓励,因为mkdir是一个外部工具,而不是一个内部Powershell命令。相反,使用New-Item -ItemType directory达到你想要的东西:

$directoryname= "D:\sysdba" 
if(!(Test-Path -Path $directoryname)){ 
    New-Item -ItemType directory -Path $directoryname 
    Write-Host "created a new folder" 
} 
else 
{ 
    Write-Host "The folder is already exists" 
} 

而且你可以为 “d:\ TEMP” 做同样的。

+0

好吧,让我检查 – deepti

+0

我再次检查文件得到生成 – deepti

+0

谢谢它的工作 – deepti