Как я могу написать сценарий, который будет читать другие сценарии и записывать их процессы? - PullRequest
0 голосов
/ 26 ноября 2018

У меня есть папка сценариев, которые используются для моей компании, и мне нужно знать, что делает каждый сценарий.Я пытаюсь написать сценарий в Power Shell, который будет записывать, что каждый сценарий делает в CSV-файл.

Я новичок в Powershell и все еще учусь, поэтому я прошу прощения, если я неясен.

Я знаю, что основная функция каждого из этих сценариев состоит в том, чтобы подключать диски к компьютеру пользователя, но их слишком много, чтобы пройти вручную, любой совет будет оценен!

РЕДАКТИРОВАТЬ: Большинство из них летучие мышис парой VBS тоже.Я хочу записать, какие диски отображаются.

РЕДАКТИРОВАТЬ 2: Я сейчас написал свой собственный скрипт, который выглядит следующим образом:

    Set-location z:\
    get-Childitem "z:\Test"|
    Foreach-object{
        $filename = $_.Fullname
        Get-content $filename|
           foreach-object {
            if ($_ -match "echo off") {
                Write-output "$($filename): $_" | select-object $_ $filename 
    | export-csv "test.csv" -notypeinformation
            }
        }
    }

У меня проблемы с экспортом данных в CSVfile as error "Не найден позиционный параметр, который принимает аргумент 'z: \ Test \ Test1.bat'"

1 Ответ

0 голосов
/ 26 ноября 2018

Самым простым способом будет разбор строк: ищите команды, которые отображают диски.Это net use для файлов bat или MapNetworkDrive в VBS.Так что ищите эти строки.

При этом будут просматриваться все файлы в папке и выводиться имя файла и содержимое строки, где бы они ни находились:

Get-ChildItem "C:\Scripts" | 
Foreach-Object {
    $filename = $_.FullName
    Get-Content $filename |
    Foreach-Object {
        if ($_ -match "net use" -or $_ -match "MapNetworkDrive") {
            Write-Output "$($filename): $_"
        }
    }
}

Это не будетскорее всего, именно то, что вам нужно, но это должно помочь вам начать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...