我有以下powershell2.0脚本:functiongetFreeDrive{[char[]]$driveLetters=@([char]'E'..[char]'Z')foreach($din$driveLetters){if(!(Test-Path-Path"$d`:"-IsValid)){return$d}}}$drive=getFreeDrivesubst"$drive`:"T:\templs"$drive`:\"#justadummycommandsubst"$drive`:"/D我想要脚本找到第一个未使用的盘符用subst创建一个新的驱动器在这个驱动器上做点什么用subs
我想检查给定用户是否有权访问给定文件夹-通过检查他们是否具有分配给他们的“修改”访问权限。我认为那个的PS是:(Get-Acl.\myfolder).Access|?{$_.IdentityReference-eq"BUILTIN\Users"}|?{$_.filesystemrights.value-contains"Modify"}但是最后一部分不起作用-我没有得到任何结果。但我知道他们有修改权限——如果我输入:(Get-Acl.\myfolder).Access|?{$_.IdentityReference-eq"BUILTIN\Users"}|select-ExpandProp
如何通过PowerShell获取环境变量?我应该执行什么命令。我使用Windows8.1 最佳答案 你可以试试这个命令:Get-ChildItemEnv:输出:NameValue---------PathD:\Perl\bin;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\ProgramFiles\...TEMPC:\DOCUME~1\kmyer\LOCALS~1\TempSESSIONNAMEConsolePATHEXT.COM;.EXE;.BAT;.CMD;
我试图使用ls递归列出WindowsPowerShell目录中的所有*.py文件。它没有用。我查看了man页面,然后是onlinepage-Recurse标志不接受通配符,因此*.py无法工作。我想知道是否有一种简单的内置方法可以使用WindowsPowerShell2.0递归列出目录中特定文件扩展名的文件?我是PowerShell的新手,现阶段不想沉迷于Shell脚本。因此,如果有的话,请仅推荐内置命令、标志等。命令是指PowerShell的内置关键字。我不确定这是否适合PowerShell。 最佳答案 使用过滤器参数:ls$pa
我不记得在较旧的Windows操作系统中找到窗口有任何问题,但是,我在Windows8.1Update2操作系统中使用PowerShellv4.0没有成功。这是我正在使用的PowerShellv4.0代码(非常简单):$sig=@'[DllImport("user32.dll")]publicstaticexternIntPtrFindWindow(StringsClassName,StringsAppName);'@$fw=Add-Type-NamespaceWin32-NameFuncs-MemberDefinition$sig-PassThru$wname='Form1'#any
我正在寻找以提升模式(runas管理员)运行批处理文件的方法,这样它就不会触发UAC以提示用户交互。我们在登录脚本中进行了一些注册表编辑,这会触发UAC提示运行的每个注册表。我意识到这违背了UAC的目的,但如果有某种方法可以在启用了UAC的机器上运行批处理文件,那就太好了。这些批处理文件需要能够在没有任何用户交互的情况下运行(它们主要是登录脚本和一些管理脚本)。我们没有使用ActiveDirectory域,因此希望有针对非AD域的解决方案。目前我找到的解决方案如下:完全禁用UAC-我们通常会这样做,但我们可能会遇到无法禁用它的某些情况。为我们希望在提升模式下运行的批处理文件创建一个快捷
我知道使用powershell可以更改注册表值。例如,这里:http://poshcode.org/3504我们可以这样设置属性:Set-ItemProperty'HKCU:\Software\Microsoft\Windows\Shell\Associations\UrlAssociations\ftp\UserChoice'-nameProgIdIE.FTP但是,是否可以使用powershell设置这些二进制值?? 最佳答案 读取值(字节数组)修改数组元素将字节数组写回注册表项。这是一个例子:$key='HKCU:\Softwa
我有一个脚本可以作为特定用户启动另一个ps1脚本,它在一个目录上执行一个简单的dir并且它可以工作,当它运行一个单独的cmd窗口时会出现目录内容。$encpwd=Get-ContentC:\path\to\creds.txt$passwd=ConvertTo-SecureString$encpwd$cred=new-objectSystem.Management.Automation.PSCredential'theuser',$passwdStart-Processc:\windows\system32\WindowsPowerShell\v1.0\powershell.exe-Cr
我们知道我们可以使用sql查询窗口从数据库中获取值,如“select*from....”。有什么办法可以通过powershell方式获取值。我找到了数据库表本身的方法,但没有找到值..例如:Set-locationSQLserver:\sql\default\localhost\databases\database\tablesGet-childitem以上命令为我提供了数据库中的表,但我如何从中获取值。 最佳答案 最简洁明了的选项是Invoke-SqlCommand$results=Invoke-Sqlcmd-ServerInst
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。这个问题似乎不是关于aspecificprogrammingproblem,asoftwarealgorithm,orsoftwaretoolsprimarilyusedbyprogrammers的.如果您认为这个问题是关于anotherStackExchangesite的主题,您可以发表评论,说明问题可能在哪里得到解答。关闭7年前。Improvethisquestion我使用PS-Get安装了一个Powershell模块(posh-git),但我发现它非常慢。我想卸载它,但使用Remove-Modu