هل يمكنني استخدام PowerShell 1.0 من قائمة العمليات جنبا إلى جنب مع PIDs وقيادة خطوط ؟

StackOverflow https://stackoverflow.com/questions/1039874

  •  22-07-2019
  •  | 
  •  

سؤال

تحرير بواسطة OP: سؤالي يفترض أن PowerShell كان أفضل أداة لهذا العمل.هناك طريقة أسهل من تحقيق هدفي.صديق أخبرتني عن: iisapp.vbs.فإنه يعرض بالضبط المعلومات التي أريد دون الحاجة PowerShell.


أنا أعمل مع العشرات من ASP.NET المواقع التي تعمل محليا و عندما أريد أن التصحيح موقع معين اسمه ، على سبيل المثال ، foo.site.com وأنا أذهب من خلال الخطوات التالية:

  1. تشغيل عملية اكسبلورر (من سسنترنلس) و التي تجد w3wp.exe بدأت مع foo.site.com على سطر الأوامر.

  2. ملاحظة معرف العملية (PID) من هذا w3wp.exe العملية.

  3. في Visual Studio نعلق على معرف العملية.

هل هناك طريقة لكتابة النصي PowerShell التي سوف طباعة PID و وسيطات سطر الأوامر من كل w3wp.exe عملية قيد التشغيل على جهاز الكمبيوتر الخاص بي ؟

عند تشغيل الحصول على عملية w3wp أحصل على:

> get-process w3wp

Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
-------  ------    -----      ----- -----   ------     -- -----------
    688      28    44060      64576   226     2.75    196 w3wp
    750      26    48328      68936   225     3.38   1640 w3wp
    989      36    54596      83844   246     4.92   1660 w3wp
    921      33    54344      80576   270     4.24   5624 w3wp
    773      27    48808      72448   244     2.75   5992 w3wp

لا سطر الأوامر المعلومات :(

وذلك بفضل!

تحرير:أنا أبحث عن وسيطات سطر الأوامر التي تم تمريرها إلى w3wp.

هل كانت مفيدة؟

المحلول

gwmi win32_process -filter "name='w3wp.exe'" | select name,processId,commandLine

فإنه ينبغي أن تفعل خدعة.أجد أنه من الغريب أن powershell لا توفر سطر الأوامر المعلومات بشكل افتراضي.ملاحظة :لقد اختبرت ذلك في powershell 2.0, ولكن كما استخدام wmi ، ينبغي أن تعمل في 1.0.

تحرير :النسخة النهائية المستخدمة من قبل تيم ستيوارت (لتجنب عرض المشكلة ، انظر التعليق) :
gwmi win32_process -filter "name='powershell.exe'" | format-table -autosize name,processId,commandLine

نصائح أخرى

أول غريزة لاستخدام الحصول على عملية النظر في startinfo الملكية:

get-process w3wp | select-object id, path, @{Name="Args";Expression = {$_.StartInfo.Arguments}}

للأسف, هذا لا ينفع لأن $_.StartInfo.Argments دائما فارغة.WMI يعمل ، على الرغم من.

get-wmiobject win32_process -filter "name='w3wp.exe'" | select-object processid, commandline

هذا يجب أن تعمل:

الحصول على عملية | تنسيق-table Id,المسار

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top