2015-06-23 84 views
0

我想用腳本「重置」用戶的配置文件。批處理或腳本來重置特定配置文件

我需要做的就是從用戶輸入中收集一個字符串。從字符串中取第一個字母。

如:Auser01

轉到該配置文件是在特定的服務器文件夾:

EG:一個用戶在Server1上的文件夾中,B用戶在Server2上。

最後將該文件夾和文件的管理員所有權和重命名它。

EG:Auser01_old

我怕我真的不知道從哪裏設置字符串開始分開!希望有人能指導我寫這個和什麼語言。批處理腳本是我開始的地方。

+0

你可以發佈你到目前爲止嘗試過的嗎? EG:你已經開始的批處理腳本 – Valorax

+1

我已經從字面上得到了這個: @echo off set/p username =輸入用戶名: – Jamwatn

回答

0

你可以做這樣的事情,ICACLS用於攝取文件夾的所有權,REN用於重命名文件夾,使用戶輸入一個字母(A或B),則if語句超出所需的命令(服務器或服務器B )icaclsren命令運行並且腳本結束。如果你需要進一步的解釋讓我知道。 更改username_or_usergroup到要採取所有權

@echo off 
setlocal EnableExtensions EnableDelayedExpansion 
cls 
:User_input 
Set/p "input=Username>" 
set letter=%input:~0,1% 


:Check_server 
If "%Letter%" == "a" (
    Goto ServerA 
    ) 

if "%Letter%" == "b" (
    Goto ServerB 
    ) 
Goto END 

:ServerA 
icacls \\ServerA\%input% /grant username_or_usergroup:F /t /q 
Ren \\ServerA\%input% \\ServerA\%input%_old 
Goto END 

:ServerB 
icacls \\ServerB\%input% /grant username_or_usergroup:F /t /q 
Ren \\ServerB\%input% \\ServerB\%input%_old 
Goto END 

:END 

用戶這是我得到的輸出測試 enter image description here

+0

這是天才的感謝!我現在正在嘗試並定製它。 – Jamwatn

+0

似乎不起作用。我有點想知道它想做什麼。 我需要將腳本的第一部分保留在頂部嗎? (即:設置/ p用戶名=輸入用戶名:) 我不知道我是否正確解釋。我想提取%username%的第一個字母。例如,如果第一個字母是A,則轉到服務器1等,然後在該服務器中找到該文件夾​​。 所以我希望我只需要一個字符串被捕獲。現在混淆自己! – Jamwatn

+0

如果你看看'Set Folder =%letter %% username%''%username%'是一個與當前用戶相同的windows var,所有用戶必須輸入的字母是A或B,所以如果User01被記錄'%username%'將等於User01所以'%folder%'將等於AUser01,如果用戶鍵入A和BUser01,如果用戶鍵入B – Valorax

0

完美的時候!這無疑給了我一個開始工作和定製我自己的方式。我可以肯定地推薦這個腳本'重置'配置文件並重命名/更改特定文件夾中的文件夾所有權和名稱,並按字母索引。 謝謝。

+0

很高興聽到它的工作,你可以接受我的回答上面看到它的工作感謝。 – Valorax

相關問題