উইন্ডোজ: কোন আউটপুট স্ট্রিম # (1-9) কনসোল আউটপুট থেকে আসছে তা নির্ধারণ করা হচ্ছে?


4

আমি STDOUT এবং STDERR এর মধ্যে বিভিন্ন আউটপুট স্ট্রিমগুলির "হাইলাইটিং" সম্পর্কে অতীতে প্রশ্নগুলি দেখেছি, তবে উইন্ডোজগুলিতে এটি করার সহজ উপায় ছিল কিনা আমি ভাবছিলাম।

কারণ আমি আগ্রহী হয়েছি কারণ আমি স্ট্রিম 3 এ একাধিক অ্যাপ্লিকেশন প্রিন্ট আউটপুট আছে & amp; 4, বিভ্রান্তিকর ফলাফল যা নেতৃত্বে & amp; অপ্রয়োজনীয় ডিবাগিং আমি এলোমেলোভাবে প্রতি সম্ভাব্য আউটপুট স্ট্রিম চেক না হওয়া পর্যন্ত।

কোন আউটপুট স্ট্রিম কনসোল আউটপুট আসছে তা নির্ধারণ করার জন্য যে কেউ ভাল অন্তর্নির্মিত সমাধান আছে? আমি সেখানে কল্পনা উচিত কোন ধরণের মনিটর (SysInternals? WMI?) যা কনসোলে তথ্য মুদ্রণ করা হচ্ছে তা দেখাবে?

উত্তর:


1

কোন আউটপুট নির্ধারণ করার জন্য যে কেউ ভাল অন্তর্নির্মিত সমাধান আছে   স্ট্রিম কনসোল আউটপুট থেকে আসছে?

আপনি শুধু ব্যবহার করতে পারেন ফেরৎ দেখতে অনুযায়ী সিনট্যাক্স STDOUT vs ফাইলগুলি পৃথক করার জন্য STDERR । নিচের উদাহরণে, ফাইলটিতে STDOUT থাকবে যেখানে ফাইলটি STDERR থাকবে।

উদাহরণ: command >> fileA 2>> fileB Redirect output and errors to separate files

STDIN  = 0 Keyboard input 
STDOUT = 1 Text output 
STDERR = 2 Error text output 
UNDEFINED = 3-9

 command 2> filename       Redirect any error message into a file   
 command 2>> filename      Append any error message into a file  
(command)2> filename       Redirect any CMD.exe error into a file   
 command > file 2>&1       Redirect errors and output to one file       
 command > fileA 2> fileB  Redirect output and errors to separate files

সূত্র


আরও সম্পদ


এটি আসলে কাজ করে, তবে আমাকে সামনের দিকে কাজ করতে হবে (এবং কিছু ধারনা করা উচিত যে আউটপুট স্ট্রিমটি সাধারণত এটির থেকে আসে না - যেমন STDOUT)। আমি এমন কিছু ভাবছিলাম যা আমাকে দেখাতে পারে, যেমন ওয়েইয়ারহার্ক নেটওয়ার্ক প্রতিক্রিয়ার জন্য, "স্ট্রিম 3 এ প্রোগ্রাম থেকে প্রতিক্রিয়া পেয়েছে"।
Coruscate5

@ Coruscate5 আমি মনে করি এটি প্রতিটি আউটপুট স্ট্রিম প্রক্রিয়া, এক্সিকিউটেবল, ইত্যাদি যা সমর্থন করে এবং এটি যে স্তরে লগ-ইন করার অনুমতি দেয় তার উপর নির্ভর করবে এবং বিভিন্ন প্রক্রিয়াকে নির্ধারণ করতে সহায়তা করবে অথবা যা প্রতিটি স্ট্রিম তৈরি করা হবে তা থেকে ভিন্ন এক্সিকিউটেবল প্রসেসগুলি উদাহরণ স্বরূপ. এই ঘটনাগুলি যদি একই এক্সিকিউটেবল বা স্ট্রিমিং প্রক্রিয়া থেকে থাকে তবে আমি মনে করি একটি সময় এবং তারিখ স্ট্যাম্প মিলিসেকেন্ডে যথেষ্ট হবে যদি এটি দ্রুত চলমান হয়। ওয়্যারশার্ক এবং সিইএন, এসিকে, ইত্যাদি প্যাকেটগুলি সহ, এটি টিসিপি / আইপি প্রোটোকল প্যাকেটগুলিকে কাজ করছে।
Pimp Juice IT

@ Coruscate5 তাহলে আপনি এই ধরনের স্ট্রিমগুলি তৈরি করে কী ধরনের প্রক্রিয়াগুলি পরিচালনা করছেন এবং প্রতিটি আউটপুট থেকে কীভাবে সঠিকভাবে সনাক্ত করতে হবে তা ঠিক করতে? আমি ভাবছি সোর্স ইন-হাউস কম্পাইল করা ভিবি কনসোল অ্যাপস বা কী। আপনি যদি যা করতে চান তা পার্থক্য করতে সহায়তা করার জন্য এক্সিকিউটেবল নাম বা তার নাম এবং টাইম স্ট্যাম্পটি STDOUT এবং STERR এ পর্যাপ্ত হবে কিনা তা অবাক করে। কিছুকে স্পষ্ট করে তুলতে সাহায্য করুন যাতে আমি এই বিষয়ে আরো নজর রাখতে পারি এবং নিশ্চিতভাবে এটির মধ্যে আরও কিছু চিন্তা করাতে পারি।
Pimp Juice IT
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.