我是脚本新手,我正在尝试使用windows powershell运行脚本从.vbs文件中提取数据;该文件看起来像这样:
...
data = field1
...
data = field2
...
data = field3
...
data = field4
...
到目前为止,我有:
$input_path = 'C:\folder\file.vbs'
$output_file = 'C:\folder\extracted_data.txt'
$regex = 'data = [A-Za-z0-9]*'
select-string -Path $input_path -Pattern $regex -AllMatches | % { $_.Matches} | % {$_.Value} > $output_file
运行脚本时,extracted_data.txt
文件完全为空。但是,如果我将.vsb文件中的所有文本复制到新的file.txt
文件中,并将输入路径更改为从该文件读取,则数据将按原样提取; extracted_data.txt
看起来像这样:
data = field1
data = field2
data = field3
data = field4
...
如何修改我的脚本,以确保它从.vsb文件中的文本中读取?
修改
检查文件的权限:
PS C:\Users\largox> Get-Acl C:\Lara\IISData-LIVE.vbs | Format-List
Path : Microsoft.PowerShell.Core\FileSystem::C:\folder\file.vbs'
Owner : BUILTIN\Administrators
Group : COMP1\Domain Users
Access : BUILTIN\Administrators Allow FullControl
NT AUTHORITY\SYSTEM Allow FullControl
BUILTIN\Users Allow ReadAndExecute, Synchronize
NT AUTHORITY\Authenticated Users Allow Modify, Synchronize
所以它似乎不是读/写权限问题,除非最后一行显示我不知道的东西?