সুডোর সাথে চলতে চলতে আমি কীভাবে ওএস এক্স dtruss আউটপুট পুনর্নির্দেশ করতে পারি?


9

আমি dtrussম্যাক ওএস এক্স ১০.৯-এ চলছে । সাধারণ উদাহরণটি হ'ল:

sudo -c ls

তবে আমি dtrussআউটপুট একটি ফাইলের মধ্যে ক্যাপচার করতে চাই । আমি এমন কিছু দেখেছি যা প্রস্তাব দেয় যে আমি এর মতো কিছু করতে পারি:

sudo bash -c 'dtruss -c ls >x'

তবে আমি যখন এটি করি dtrussতখনও আউটপুটটি টার্মিনালে যায় এবং ফাইলটির তালিকা থেকে ফাইলটি lsপুনঃনির্দেশিত হয়।

আমি কীভাবে dtrussকোনও ফাইলে আউটপুট পুনর্নির্দেশ করতে পারি ?


1
dtruss সম্ভবত জাদুকরী stderrপরিবর্তে লিখুন stdoutকি >xক্যাপচার। এই প্রশ্নগুলি কী করবেন তা ব্যাখ্যা করে: লিনাক্স কম আচরণ এবং stderr
— নিফেল

উত্তর:


9

আমি এটি এভাবে চালিয়ে যাচ্ছি:

sudo dtruss -f -p 12345 2> /tmp/trace.txt
  • -f শিশু প্রক্রিয়া অনুসরণ করতে বলে।
  • -p কোন প্রক্রিয়া আইডি ট্রেস করতে হবে তা নির্দিষ্ট করে।
  • 12345প্রক্রিয়া আইডির জন্য স্থানধারক। আপনি topবা এটি দেখে এটি পেতে পারে ps -A।
  • 2>পাইপগুলি আউটপুট ফাইলে স্ট্যান্ডার্ড ত্রুটি। কিছু কারণে স্ট্র্যাডারে ডিট্রুস সবকিছু আউটপুট করে।

এটি কী করে তা বোঝাতে আপনি নিজের উত্তরটি প্রসারিত করতে পারেন? ধন্যবাদ।
— ফিক্সার 1234

'-f' বলছে শিশু প্রক্রিয়াগুলি অনুসরণ করুন, '-p' নির্ধারণ করে কোন প্রসেস আইডিটি সনাক্ত করতে হবে, '2>' পাইপগুলিকে আউটপুট ফাইলে স্ট্যান্ডার্ড ত্রুটি দেয়। কিছু কারণে স্ট্র্যাডারে ডিট্রুস সবকিছু আউটপুট করে।
— লুক কুইনেন

প্রসেস আইডির জন্য 12345 একটি স্থানধারক (এবং এটি কোথা থেকে আসবে)?
— ফিক্সার 1234

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