Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   Start-Process -WindowStyle hidden и запись результата (http://forum.oszone.net/showthread.php?t=353733)

ts1000win 19-06-2023 23:36 3010845

Start-Process -WindowStyle hidden и запись результата
 
Так получается записать результат:
Код:

C:\Program Files (x86)\Nmap\nmap -v -iR 10000 -Pn -p 80 | Out-File -FilePath C:\Users\Administrator\Documents\perm.txt
Так отказывается запускать Get-Process без демонстрации ошибки:
Код:

Start-Process -WindowStyle hidden "C:\Program Files (x86)\Nmap\nmap" "-v -iR 10000 -Pn -p 80 | Out-File -FilePath C:\Users\Administrator\Documents\perm.txt"
Так запускает процесс, но отказывается писать результат в файл:
Код:

Start-Process -WindowStyle hidden "C:\Program Files (x86)\Nmap\nmap -v -iR 10000 -Pn -p 80  > C:\Users\Administrator\Documents\perm.txt"
Так ошибка:
Код:

PS C:\Users\computer> Start-Process -WindowStyle hidden "ls | findstr vor | Out-File -FilePath find.txt"
Start-Process : Не удается выполнить команду из-за следующей ошибки: Не удается найти указанный файл.
строка:1 знак:1
+ Start-Process -WindowStyle hidden "ls | findstr vor | Out-File -FileP ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [Start-Process], InvalidOperationException
    + FullyQualifiedErrorId : InvalidOperationException,Microsoft.PowerShell.Commands.StartProcessCommand


Sham 20-06-2023 08:48 3010850

Start-Process требует имя файла, а там нужен invoke-expression

ts1000win 20-06-2023 14:31 3010853

Цитата:

Цитата Sham
Start-Process требует имя файла, а там нужен invoke-expression »

Редактировал пост, как в данном случае использовать invoke-expression?

Serguei Kouzmine 20-06-2023 16:42 3010860

Код:

cmd %%-  /c
вначале поставтье

Sham 20-06-2023 18:10 3010866

Invoke-Expression "ping localhost" > file или Invoke-Command {ping localhost} > file. start-process по умолчанию ничего не выводит.

ts1000win 20-06-2023 22:41 3010905

Цитата:

Цитата Serguei Kouzmine
вначале поставтье »

Можно функционирующую запись?:
Код:

PS C:\Users\computer> cmd %%-  /c Start-Process -WindowStyle hidden "ls | findstr vor | Out-File -FilePath find.txt"
"Start-Process" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.

Если пишу так:
Код:

cmd %%-  Start-Process -WindowStyle hidden "ls | findstr vor | Out-File -FilePath find.txt" /c
отсутствует файл find.txt после выполнения.

YuS_2 21-06-2023 09:56 3010924

ts1000win, почему бы просто не почитать документацию? Это ведь несложно
Код:

start -WindowStyle hidden -filepath "C:\Program Files (x86)\Nmap\nmap" -arg "-v -iR 10000 -Pn -p 80" -pass|out-file "out.txt"

Serguei Kouzmine 22-06-2023 00:55 3010988

Код:

invoke-expression "cmd %%- /c C:\Windows\System32\PING.EXE -n 3 www.google.com  >> log.txt"
Код:

type log.txt
- сами знаете что там

чтобы вывод назначать инстансу процесса тоже можно но больше букв

Serguei Kouzmine 22-06-2023 02:03 3010990

Цитата:

Цитата YuS_2
ts1000win, почему бы просто не почитать документацию? Это ведь »

YuS_2 а вы пробовали следовать этому приемру ?

что поулчилось ?

Код:

start-process -WindowStyle hidden -filepath "C:\Windows\System32\PING.EXE"
-argumentlist @('-n', '3' ,'www.google.com') -passthru |out-file ('{0}\{1}' -f $process_workdir,$logfile )


type  ('{0}\{1}' -f $process_workdir,$logfile )

Handles  NPM(K)    PM(K)      WS(K) VM(M)  CPU(s)    Id  SI ProcessName
-------  ------    -----      ----- -----  ------    --  -- -----------
      4      4      260      1180 ...59    0.00  7128  1 PING

@ts1000win слие хотсяче через процессы то вот так


Код:

[System.Diagnostics.ProcessStartInfo] $si = new-object System.Diagnostics.ProcessStartInfo
$process_workdir = 'c:\temp'
$logfile = 'a.log'
$si.FileName = 'cmd.exe'
$si.Arguments = ('/c C:\Windows\System32\PING.EXE -n 3 www.google.com >> {0}' -f $logfile )
$si.UseShellExecute = $true
# NOTE: The Process object must have the UseShellExecute property set to false in order to redirect IO streams.
$si.RedirectStandardOutput = $false
$si.WorkingDirectory = $process_workdir
$si.WindowStyle = [System.Diagnostics.ProcessWindowStyle]::Hidden
$si.ErrorDialog = $true
$x = [System.Diagnostics.Process]::Start($si)
# TODO: improve wait until exited
while (-not $x.HasExited) {
  start-sleep -seconds 1
}

get-content -path "${process_workdir}\${logfile}"

в
Код:

c:\temp\a.log
будет выхопл пинаг

YuS_2 22-06-2023 03:50 3010992

Цитата:

Цитата Serguei Kouzmine
а вы пробовали следовать этому приемру ? »

конечно.

Цитата:

Цитата Serguei Kouzmine
что поулчилось ? »

здесь больше интересен вопрос: а ЧТО хотелось там получить? Чего требуется-то в итоге? :search:

Цитата:

Цитата Serguei Kouzmine
будет выхопл пинаг »

Возможно, надо получить выхлоп работы самой программы в файл? Ну и здесь документация может помочь, просто надо читать её не по диагонали и не только лишь первые две строчки...

Код:

start -WindowStyle hidden -filepath "ping" -arg "-n 3 www.google.com" -RedirectStandardOut "out.txt"
Не?

В общем, когда создается топик, то лучше всего, формулировать задачу, а не пытаться описывать способ, возможно, неправильного её решения.

Serguei Kouzmine 22-06-2023 05:10 3010993

Цитата:

Цитата YuS_2
Чего требуется-то в »

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

а то что методы и свойства c# который делает всю работу дублируются флагами повершелла и еще и (иногда) с ошибками это вообще *epic* *something Microsoft is prone to demonstrate* - посмотрите на количество дублирующих стеков в ажуре (там не то 4 не то 5 способов каждую операцию сделать: Bicep, Azure Resource Manager, az (CLI :node or python), Powerhell Azure cmdlet (в консоли браузера помоему еще чуть по другому можно через Azure Cloud Shell Azure Drive ), и до кучи SDK и пара разных способов из визуал студио коде и просто визуал студио

YuS_2 22-06-2023 06:16 3010994

Цитата:

Цитата Serguei Kouzmine
что вот техническая информация о деталях выполнения фоновых работ самим повершеллом ну просто на последнем месте в очереди того что требуется получить запуская процесс с консолным выводом но со скрытой консолью »

Вопрос не в том, что предполагает отвечающий, а в том, что хочет получить вопрошающий... эти две переменные, часто живут в разных Вселенных.
Очень помогает их совместить в одном пространстве, как бы странно это ни звучало, четко сформулированная задача. :)

Цитата:

Цитата Serguei Kouzmine
а то что методы и свойства c# который делает всю работу дублируются флагами повершелла и еще и (иногда) с ошибками это вообще *epic* *something Microsoft is prone to demonstrate* »

Ну, это ведь проблема не только лишь микрософта, в мире программирования такая ситуация - не редкость. Идеал, как говорится, недостижим... или маловероятен, так точнее.

Serguei Kouzmine 22-06-2023 16:04 3011011

Цитата:

Цитата YuS_2
хочет получить вопрошающий »

он часто не догадывается
- правильного заданный вопрос содержит половину ответа

ts1000win 27-06-2023 15:37 3011167

Очевидно, необходима запись результата скрытно выполняемого nmap в файл.

Sham 27-06-2023 18:43 3011180

Код:

Start-Process 'C:\Program Files (x86)\Nmap\nmap.exe' '-v', '-iR', 10000, '-Pn', '-p', 80 -RedirectStandardOutput 'C:\Users\Administrator\Documents\perm.txt' -WindowStyle 'hidden'

Vadikan 28-06-2023 00:37 3011188

Цитата:

Цитата ts1000win
необходима запись результата скрытно выполняемого nmap в файл »

Нюансы настройки запланированного задания или как запустить невидимое приложение


Время: 14:32.

Время: 14:32.
© OSzone.net 2001-