2013-12-23 33 views
0

我正在嘗試創建一個腳本以供我們在工作時執行手動數據傳輸時使用,當用戶在隨機位置有大量隨機數據時,這可能會很繁瑣。我想將這些項目從舊驅動器上的舊位置移動到我們的網絡位置,然後將其拉回。我在下面是我正在尋找的測試版,我的問題是我無法弄清楚爲什麼我無法找到當前登錄的用戶並排除某些帳戶。Powershell腳本將多個未知文件移動到正確的位置

$DOCDIR = [Environment]::GetFolderPath("MyDocuments") 
$TARGETDIR = 'C:\TextFiles' 
if(!(Test-Path -Path $TARGETDIR)){ 
    New-Item -ItemType directory -Path $TARGETDIR 
} 

[email protected]("*.*") 
[email protected]("C:\Users\%USERNAME%\Documents","C:\Users\%USERNAME%\Pictures") 

Get-ChildItem -Path $Path -Include $Include -Recurse | Move-Item -Destination C:\TextFiles 

請注意,您將獲得更多的信息,但我不確定如何獲取當前用戶並使其不包含管理員帳戶。

謝謝你的幫助。

回答

1

您可以使用名爲USERDOMAINUSERNAME的環境變量來確定當前登錄的用戶。

if ($env:UserName -eq 'Trevor.Sullivan') { 
    # Do something 
} 

把它一步,你可以建立你要排除的用戶帳戶的數組,然後檢查是否當前登錄的用戶帳戶信息包含在陣列英寸這裏有一個例子:

# Build the list of excluded users 
$ExcludedUserList = @(
     'User1' 
    , 'User2' 
    , 'User3' 
    , 'User4' 
    ); 

# Check if user is contained in exclusion list 
if ('User5' -notin $ExcludedUserList) { 
    # Do something here 
} 
+0

如果我讀這正確的,那麼,如果「用戶5」是說,約翰·史密斯,這是不是在排除列表中,然後它會做的約翰·史密斯的數據傳送正確嗎?感謝您的幫助,非常感謝。 – Iwifia

+0

是的,這是正確的。 –

相關問題