如何将参数从批处理文件传递给power shell脚本? [英] How to pass parameters from batch file to power shell script?

查看:99
本文介绍了如何将参数从批处理文件传递给power shell脚本?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

大家好



在从power shell创建活动目录中的新用户时遇到问题,在此我们需要提供批处理文件中的值.am new请提供一些关于如何将参数从批处理文件传递到shell脚本的工作。



i试过这会工作吗?



###批处理文件:test.bat ###

@echo off

set / p uname =%1

set / p sname =%2

set / p dname =%3

set / p pwd =%4

set / p upname =%5

powerShell.exe -File TestPs.ps1%1%2%3%4%5

暂停

### ps文件:TestPs.ps1 ###

导入模块ActiveDirectory

新ADUser`

-Name$ args [0] `

-PathCN = Users,DC = some,DC = Local`

-SamAccountName$ args [1]`

-DisplayName$ args [2]`

-AccountPassword(ConvertTo-SecureString$ args [3] - AsPlainText -Force)`

-ChangePasswordAtLogon $ true `

-Enabled $ true

-userprincipalname($ args [4]+incess.local)







很抱歉打扰你我不熟悉这个请不要介意。

这是剧本。

批次:test1.bat



Hi all

am facing an issue while creating new user in active directory from power shell, In this we need to provide values from batch file..am new to this please provide some work around how to pass parameters from batch file to shell script.

i tried this will it work?

###batch file: test.bat###
@echo off
set /p uname=%1
set /p sname=%2
set /p dname=%3
set /p pwd=%4
set /p upname=%5
powerShell.exe -File TestPs.ps1 %1 %2 %3 %4 %5
pause
###ps file:TestPs.ps1###
Import-Module ActiveDirectory
New-ADUser `
-Name "$args[0]" `
-Path "CN=Users,DC=some,DC=Local" `
-SamAccountName "$args[1]" `
-DisplayName "$args[2]" `
-AccountPassword (ConvertTo-SecureString "$args[3]" -AsPlainText -Force) `
-ChangePasswordAtLogon $true `
-Enabled $true
-userprincipalname ("$args[4]" + "incess.local")

[edit from="http://www.codeproject.com/script/Membership/View.aspx?mid=11010562"]

Sorry for troubling you i am new to this please never mind.
Here is the script.
Batch:test1.bat

@echo off
set /p uname=Enter user name:
set /p sname=Enter samAccount name:
set /p dname=Enter display name:
set /p pwd=Enter password:
set /p upname=Enter user principal name:
powershell.exe -File "testPs.ps1" %uname% %sname% %dname% %pwd% %upname%





和shellscript:





and shellscript:

Import-Module ActiveDirectory

New-ADUser `

 -Name "args[0]" 

 -ChangePasswordAtLogon $true 

 -SamAccountName "args[1]" 

 -DisplayName "args[2]"

 -Enabled $true 

 -Path "CN=Users,DC=lab,DC=local" 

 -givenname user 

 -surname test 

 -AccountPassword (ConvertTo-SecureString "args[3]" -AsPlainText -Force) 

 -userprincipalname ("args[4]" + "@lab.local")





[/ edit]



[/edit]

推荐答案

args [0]`

-PathCN = Users,DC = some,DC =本地`

-SamAccountName
args[0]" `
-Path "CN=Users,DC=some,DC=Local" `
-SamAccountName "


args [1]`

-DisplayName
args[1]" `
-DisplayName "


args [2]`

-AccountPassword(ConvertTo-SecureString
args[2]" `
-AccountPassword (ConvertTo-SecureString "


这篇关于如何将参数从批处理文件传递给power shell脚本?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆