উইন্ডোজে একটি পিআইডি দেওয়া হয়েছে - এটি কার্যকর করা কমান্ড লাইন নির্দেশকে আমি কীভাবে খুঁজে পাব?


26

একটি ডাটাবেসে, আমি বর্তমানে চলমান সমস্ত প্রক্রিয়াগুলির একটি তালিকা এবং এসকিএল কমান্ড যা তাদের লাথি মেরেছিল তা পেতে পারি।

আমি উইন্ডোজ বাক্সে অনুরূপ কাজ করতে চাই।

আমি প্রক্রিয়াগুলির তালিকা পেতে পারি, কিন্তু কমান্ড লাইনটি যা তাদের লাথি মেরেছিল not

আমার প্রশ্নটি: উইন্ডোজটিতে একটি পিআইডি দেওয়া হয়েছে - এটি কার্যকর করা কমান্ড লাইন নির্দেশকে আমি কীভাবে খুঁজে পাব?

অনুমিতি:

  • উইন্ডোজ 7 এবং সমতুল্য সার্ভারগুলি

উত্তর:


35

পাওয়ারশেল এবং ডাব্লুএমআই

Get-WmiObject Win32_Process | Select ProcessId,CommandLine

অথবা

Get-WmiObject -Query "SELECT CommandLine FROM Win32_Process WHERE ProcessID = 3352"

নোট করুন যে কোনও প্রক্রিয়া সম্পর্কে এই তথ্য অ্যাক্সেস করার জন্য আপনার কাছে অনুমতি থাকতে হবে। সুতরাং আপনি কমান্ডটি অ্যাডমিন হিসাবে চালাতে পারেন যদি আপনি জানতে চান যে প্রক্রিয়াটি কোনও সুবিধামত প্রসঙ্গে চলছে।


আমি দেখতে পাচ্ছি যে পথটি কাটা হয়েছে - এর কাছাকাছি কোনও পথ আছে?
হক্কে

1
@ হককি | FLকমান্ডের শেষে যুক্ত করার চেষ্টা করুন । এটি আমার জন্য সমস্ত কমান্ড লাইনকে প্রসারিত করে। সাথে খেলতেও পারে| Select -ExpandProperty CommandLine
রায়ান রিস

মজার বিষয় হল আপনি নেটিভ গেট-প্রসেস সেন্টিমিডলেট থেকে এই তথ্যটি পেতে পারবেন না।
ডেভিডউ

3
গেট-প্রক্রিয়া সিস্টেম.ডায়াগনস্টিক্স.প্রসেস ক্লাস ব্যবহার করে যার যে সম্পত্তি নেই। প্রক্রিয়াজাতকরণের জন্য ডাব্লুআইএমআই ব্যবহারের জন্য গেম-প্রক্রিয়াতে সহায়তারও উদাহরণ রয়েছে
জিম বি

2
এটি লক্ষণীয় যে অন্য কোনও প্রক্রিয়ার কমান্ড লাইন পাওয়ার কোনও আনুষ্ঠানিক সমর্থনযোগ্য উপায় নেই। যদিও সেখানে উপায় আছে একটি স্ট্রিং, যাতে পেতে পারে কমান্ড লাইন হয় তবে তা অপারেটিং সিস্টেম দ্বারা নিশ্চিত করা হয় না এর এবং ফলাফল সব আপনি জানেন জন্য "মুরগির মুরগির মুরগির" হতে পারে।
নিক

21

আপনি এই তথ্যটি পেতে WMIC.EXE ব্যবহার করে ডাব্লুএমআই সাবসিস্টেমটি ব্যবহার করতে পারেন। 600 এর একটি পিআইডি ধরে নেওয়া:

wmic.exe path Win32_Process where handle='600' get name, commandline  /format:list

আপনি নাম, বা প্রক্রিয়াটির অন্যান্য বৈশিষ্ট্য অনুসন্ধান করতে পারেন। সমস্ত বৈশিষ্ট্য তালিকাবদ্ধ করতে এই আদেশটি ব্যবহার করুন:

wmic.exe path Win32_Process get  /format:list

1
এটা সহজ; আপনি এটির processপরিবর্তে ওরফে দিয়ে কিছুটা ছোট করতে পারেন path Win32_Process; যেমন, wmic.exe process get
এমকিলেমেন্ট

15

অন্যান্য উত্তরগুলি অবশ্যই ভাল বিকল্প যা তাদের কমান্ড লাইনের প্রকৃতির কারণে একটি স্বয়ংক্রিয় সিস্টেমে আপনাকে ভালভাবে পরিবেশন করবে (এবং আমি ট্যাগ থেকে দেখছি যে আপনি যা চেয়েছিলেন)। অবশ্যই, কিছু লোকেরা একটি জিইউআইয়ের সাথে এই ধরণের তথ্য অন্বেষণ করতে চাইতে পারে, সুতরাং সেই লাইনগুলির পাশাপাশি এখানে একটি বিকল্প রয়েছে।

প্রক্রিয়া এক্সপ্লোরার মাইক্রোসফ্ট দ্বারা পরিচালিত একটি সিসিন্টার্নাল সরঞ্জাম। এটি প্রক্রিয়াটির বৈশিষ্ট্য সংলাপে প্রক্রিয়াটির কমান্ড লাইনটি এবং সেই সূত্রে অভিভাবকরাও এটি প্রবর্তন করতে পারে, যদিও সেই প্রক্রিয়াটির নাম আর উপলভ্য নাও হতে পারে। প্রক্রিয়া বৈশিষ্ট্য ডায়ালগ এখানে:

প্রক্রিয়া বৈশিষ্ট্য ডায়ালগ

আপনি যদি কোনও প্রক্রিয়া কখন চালু হয়েছিল এবং কোন অবস্থার অধীনে আরও বিশদ নিরীক্ষণের ট্রেইল চান তবে আপনি প্রক্রিয়া মনিটর নামক অন্য সিস্টেটার্নাল সরঞ্জামে যেতে পারেন। এখানে আপনি "প্রক্রিয়া শুরু হয়েছে" ইভেন্টগুলির জন্য ফিল্টার করতে পারেন, প্রক্রিয়াটি যে পরিবেশে চালু হয়েছিল সে সম্পর্কে শিখতে পারেন এবং সেই সময়ে অন্যান্য ইভেন্টগুলি কী ঘটছিল তা দেখুন। এটি বেশ শক্তিশালী প্রোগ্রাম। এখানে ইভেন্ট বৈশিষ্ট্য সংলাপ:

ইভেন্ট বৈশিষ্ট্য ডায়ালগ


10
অথবা পিআইডি এবং "কমান্ড লাইন" দেখানোর জন্য কেবল টাস্ক ম্যানেজারের কলামগুলি পরিবর্তন করুন। এবং সম্পন্ন।
ইসমাইল মিগুয়েল

@ ইসমাইলমিগুয়েল টাস্ক ম্যানেজারের কমান্ড লাইন কলামটি দীর্ঘ আর্গুমেন্টের স্ট্রিং কেটে ফেলেছে, প্রক্রিয়া এক্সপ্লোরার করে কিনা তা জানেন না
এসডিতে জেজি

@ জিজিনএসডি আমি কখনও কাটা যুক্তি দেখিনি।
ইসমাইল মিগুয়েল

1
@ ইসমাইল মিগুয়েল কমান্ড লাইন কলামের জন্য সীমাটি প্রায় 200 টি অক্ষরের মতো দেখে মনে হয়েছে
এসডিতে জেজি

1
টাস্ক ম্যানেজারের আসল সীমা 259 টি অক্ষর। (উইন্ডোজ 10 এ যাচাই করা হয়েছে) টাস্ক ম্যানেজারের একটি সুবিধা রয়েছে, তবে: এটি আপনাকে অন্যান্য ব্যবহারকারীদের / উন্নত প্রক্রিয়াগুলির লাইন কমান্ড দেখায় এমনকি যখন এটি স্বয়ংক্রিয়তা ছাড়াই চলে (প্রশাসক হিসাবে নয়)। যদিও প্রসেস এক্সপ্লোরার এবং প্রসেস মনিটরের 259-চরিত্রের সীমা নেই, v16.22 অনুযায়ী তারা অতিরিক্ত দীর্ঘ কমান্ড লাইনের সাথে স্তব্ধ হয়ে থাকতে পারে যদি Command Lineকলামটি যুক্ত করা হয় আপনি যদি সেই কলামটির উপরে মাউস করেন।
এমকিলেমেন্ট

1

পরিপূর্ণ করার জন্য রায়ান Ries 'সহায়ক PowerShell উত্তর একটি সঙ্গে মাধ্যমে খাটো বিকল্প -Filterপরামিতি যে ব্যবহারGet-CimInstance পরিবর্তে অবচিত-যেহেতু-V3 Get-WmiObjectcmdlet

# Target a process by its PID (process ID) and report its command line, 
# using the PowerShell session's own PID as an example ($PID).
(Get-CimInstance Win32_Process -Filter "ProcessId=$PID").CommandLine

# Alternatively, target process(es) by name (may return multiple processes), 
# using Notepad.exe as an example.
# Select-Object is used to report both the PID and the command line.
Get-CimInstance Win32_Process -Filter "Name='Notepad.exe'" |
  Select-Object ProcessId, CommandLine

-Filterপরামিতি মূলত আপনি পাস করার অনুমতি দেয় WHEREএকটি ধারা WQL এর মাধ্যমে একটি পূর্ণ ক্যোয়ারী বিবৃতি ক্ষণস্থায়ী পরিবর্তে বিবৃতি -Query

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.