मैं एक चर के लिए एक कमांड के आउटपुट को कैसे निर्दिष्ट करूं?


19

क्या किसी वैरिएबल को मान देने का एक तरीका है, वह मूल्य जो हमें किसी कमांड को लिखकर टर्मिनल में मिलता है?

उदाहरण आदेश: sensors

उसी से हमें CPU तापमान मिलता है। मैं इस मान को एक temp_cpuचर में कैसे निर्दिष्ट कर सकता हूं ?


1
यह प्रश्न सुपर उपयोगकर्ता या यूनिक्स और लिनक्स के लिए अधिक अनुकूल है । प्रयास करें temp_cpu=$(sensors)(यह नए स्थानों को रिक्त स्थान में बदल देगा, हालांकि)। आप अपनी grepविशिष्ट जानकारी को फ़िल्टर करने के लिए भी उपयोग कर सकते हैं ।
एडविन

1
@edwin इस स्थान के लिए प्रश्न इतना उपयुक्त क्यों नहीं है?
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
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.