2015-09-04 31 views
0

我正在創建一個長腳本,它可以執行許多操作。powershell腳本讀取目錄中的文件夾並將其輸出到文件並修改爲創建AD組

首先,腳本將獲得目錄和輸出文件夾列表到一個文件 我有以下

Get-ChildItem -Path "filepath" | Select-Object Name | Out-File c:\dir.txt 

這個代碼的文件的輸出會看起來像

  • 名稱
  • -
  • 1234556說明1
  • 1244556說明2
  • 1234456說明3

我要刪除的前兩行,然後剝去列表中的所有字符除了第7號和相同的文本添加到這樣每個目錄名稱的末尾:

  • 1234556Descript
  • 1244556Descript
  • 1234456Descript

然後完成後,我想從這個名單列表中創建一個AD組。

回答

1

你可以做到這一點,而無需使用一個文本文件的文件名存儲英寸

$Endding = "EnddingToGroup" 
$path = "C:\FolderPath\" 

Get-ChildItem -Path $path ` 
    | Select-Object -ExpandProperty Name ` 
    | %{ "$(($_).SubString(0,7))$Endding" } ` 
    | %{ New-ADGroup -Name $_ -GroupCategory Security -GroupScope Global -DisplayName $_ } 

這將讓一個文件夾中的項目列表,然後取每個項目的名字前7個字符並在末尾添加'$ endding'。然後它將使AD全球安全組的名稱。

如果你想看看哪個組將運行前進行,只需要運行該腳本的以下部分,而不New-ADGroup部分:

$Endding = "EnddingToGroup" 
$path = "C:\FolderPath\" 

Get-ChildItem -Path $path | Select -ExpandProperty Name | %{ "$(($_).SubString(0,7))$Endding" } 
+0

代碼起初令人困惑,因爲$路徑名了。 txt在裏面。 – dac086

相關問題