কিভাবে আমি একটি ভেরিয়েবলের কমান্ডের আউটপুট বরাদ্দ করব?


19

কোনও ভেরিয়েবলের মান নির্ধারণের কোনও উপায় আছে, কোন মানটি যা আমরা কোনও কমান্ড লিখে টার্মিনালে পেয়েছি?

উদাহরণ কমান্ড: sensors

সেখান থেকে আমরা সিপিইউ তাপমাত্রা পাই। আমি এই মানটি কোনও temp_cpuচলককে কীভাবে নির্ধারণ করতে পারি ?


1
এই প্রশ্নটি সুপার ব্যবহারকারী বা ইউনিক্স এবং লিনাক্সের পক্ষে বেশি উপযুক্ত । চেষ্টা করুন temp_cpu=$(sensors)(এটি স্পেসগুলিতে নতুন লাইনে পরিণত হবে)। grepআপনার প্রয়োজনীয় নির্দিষ্ট তথ্য ফিল্টার করতে আপনিও ব্যবহার করতে পারেন ।
এডউইন

1
@ এডউইন প্রশ্ন কেন এই জায়গার জন্য এতটা উপযুক্ত নয়?
tshepang

@ শেপাপাং, এই প্রশ্নটি উবুন্টুর সাথে সুনির্দিষ্ট নয়, এটি কেবল ইউনিক্সের মতো শেল সম্পর্কে । সুতরাং, ইউনিক্স এবং লিনাক্স
এডউইন

1
নীতি / সাধারণ মতামত পরিবর্তন হয়েছে? আমি ভেবেছিলাম যে এই সাইটটি এমন প্রশ্নগুলিকে স্বাগত জানিয়েছে যা উবুন্টুর জন্য প্রয়োজনীয় নয়।
tshepang

উত্তর:


27

হ্যাঁ, আপনি ব্যবহার করুন my_var=$(some_command)। উদাহরণ স্বরূপ:

$ foo=$(date)
$ echo $foo
Mon Jul 22 18:10:24 CLT 2013

অথবা আপনার সুনির্দিষ্ট উদাহরণের জন্য, আপনি যে নির্দিষ্ট ডেটা চান তা ব্যবহার sedএবং grepপেতে:

$ cpu_temp=$(sensors acpitz-virtual-0 | grep '^temp1:' | sed 's/^temp1: *//;s/ .*//')
$ echo $cpu_temp
+39.0°C
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.