我是PowerShell的新手,我需要一些幫助。下面是我寫的用於查找文件夾中的excel文件的腳本。 Excel表格中的文件將與同一臺機器上另一個文件夾的內容進行比較。位置是:「C:\ MKS_DEV \」,結果匹配的文件將被壓縮並放在另一個位置,如腳本中所示。這些腳本將被不同機器上的其他人使用,因此這兩個文件夾的位置可能在不同的機器上有所不同。使用Powershell中的參數分配文件夾位置
我想寫一個參數或使用兩個文件夾的位置參數,這樣我就不必指定位置所有的時間我必須運行腳本,並不能找出如何實現這一點。
這些腳本完美地工作,但我只需要將參數/參數合併到其中。任何幫助將非常感激。
謝謝。
下面是代碼:
# Creating an object for the Excel COM addin
$ExcelObject = New-Object -ComObject Excel.Application
# Opening the Workbook
$ExcelWorkbook = $ExcelObject.Workbooks.Open("C:\Eric_Source\Test.xls")
# Opening the Worksheet by using the index (1 for the first worksheet)
$ExcelWorksheet = $ExcelWorkbook.Worksheets.Item(1)
# The folder where the files will be copied/The folder which will be zipped
# later
$a = Get-Date
$targetfolder = "C:\"+$a.Day+$a.Month+$a.Year+$a.Hour+$a.Minute+$a.Second
# Check if the folder already exists. Command Test-Path $targetfolder returns
# true or false.
if(Test-Path $targetfolder)
{
# delete the folder if it already exists. The following command deletes a
# particular directory
Remove-Item $targetfolder -Force -Recurse -ErrorAction SilentlyContinue
}
# The following command is used to create a particular directory
New-Item -ItemType directory -Path $targetfolder
# Declaration of variables, COlumn value = 6 for Column F
$row = 1
$col = 6
# Read a value from the worksheet with the following command
$filename = $ExcelWorksheet.Cells.Item($row,$col).Value2
$filename
# change the folder value below to specify the folder where the powershell
# needs to search for the filename that it reads from excel file.
$folder = "C:\MKS_DEV\"
$null = ""
請注意代碼格式化。 –
您是否希望腳本具有默認值對於test.xls,或者您是否希望腳本在本地計算機上搜索test.xls,或者您是否希望腳本查看它從哪個文件夾運行名爲test.xls的文件,例如,如果腳本位於文件夾c:\ justin腳本將知道它的根文件夾是c:\ justin,如果將腳本移動到d:\ mike,則在該文件夾中查找test.xls知道它在d:\ mike文件夾中,並在該文件夾中查找test.xls。 – justinf
感謝Justinf,我想我會希望腳本具有默認值。 excel位置:(「C:\ Eric_Source \ Test。XLS「)和其他文件夾位置:」 C:\ MKS_DEV \ 這些文件夾的位置將在不同的機器上改變,所以我想用參數/參數,以便該位置將不會被硬編碼,並可以在不同的設備上,無需使用指定位置的所有時間。 – Baykes75