三種方式獲取樹莓派CPU信息
    發(fā)布者:趙云蕾  發(fā)布時間:2016-12-05 09:37:30  訪問次數(shù):789

      第一種方式,通過命令打開樹莓派的獲取溫度的臨時文件。

      如上圖所示,對于新手的我犯了個錯誤,就在于Linux命令的概念的不熟悉。就是cd和cat命令,以為cd命令也可以打開一個文件,但是顯示的沒有文件存在,用cat命令查看,37014,即是37.014度。

      查看了下網(wǎng)頁對這兩個命令的解讀如下:

      一個是切換目錄命令,一個是輸出命令,輸出到屏幕等。對概念的不熟悉,才會犯了這種錯誤。

      最后附上命令行:

      cd /sys/class/thermal/thermal_zone0/temp

      cat temp

      第二種方式:VI編譯器編寫程序,新建一個文件。對于樹莓派自帶的臨時文件輸出的并不是攝氏度,所以我們要自己弄為攝氏度。命令行:

      sudo vi temp.py

      寫上一下代碼。但是問題來了,對于新手來說,如何進入編輯模式,如何保存,如何退出都是很頭大。我一開始也是很懵逼。但是基本操作幾次也可以上手了。

      按i 進入編輯模式

      按ESC  退出編輯模式

      :wq 保存文件并退出vi  :w 保存文件但不退出vi

      :w file 將修改另外保存到file中,不退出vi

      :q 不保存文件,退出vi

      最后回車即可。

      然后在進行以下操作:

      一開始我按照網(wǎng)友的chomd +x temp 老是提示沒權(quán)限。最后前面加了sudo就好了。

      網(wǎng)頁對sudo的解讀如下:

      sudo是superuser do的簡寫,sudo是linux系統(tǒng)管理指令,是允許系統(tǒng)管理員讓普通用戶執(zhí)行一些或者

      全部的root命令的一個工具,如halt,reboot,su等等。這樣不僅減少了root用戶的登陸 和管理時間

      ,同樣也提高了安全性。

      最后可以得到溫度為38.6度。

      附上VI代碼:

      #!/usr/bin/python

      # -*- coding: utf-8 -*-

      # 打開文件

      file = open("/sys/class/thermal/thermal_zone0/temp")

      # 讀取結(jié)果,并轉(zhuǎn)換為浮點數(shù)

      temp = float(file.read()) / 1000

      # 關(guān)閉文件

      file.close()

      # 向控制臺打印

      print "temp : %.1f" %temp

      第三種方式是使用蟒蛇來進行獲取信息,不過這次獲取的信息相對比較多。包括溫度、內(nèi)存、硬盤、CPU。我也是根據(jù)網(wǎng)友的經(jīng)驗來進行獲取的,網(wǎng)上也有很多教程,再次我根據(jù)我自身情況來說明。此部分是由nano編譯器來編寫的,我也很不熟悉。特別是一些命令行。跟VI不一樣,但是操作起來也蠻順手。網(wǎng)上的教程可能沒那么詳細,就是貼了代碼后如何退出nano沒什么說明。nano保存退出就需要ctrl+o保存文件 ctrl+x退出文件即可。

      我要運行這個代碼的時候,發(fā)現(xiàn)使用./并不能運行,最后使用python后才可以。這個應該是使用nano的話要運行蟒蛇的話就是使用python吧。


      附上命令行 有參考了網(wǎng)上的教程,百度上有,我只是總結(jié)了下我自身的情況。

      第一步 新建腳本:sudo nano get.py

      第二步 在編譯器輸入代碼:

      import os

      # Return CPU temperature as a character string

      def getCPUtemperature():

      res = os.popen('vcgencmd measure_temp').readline()

      return(res.replace("temp=","").replace("'C\n",""))

      # Return RAM information (unit=kb) in a list

      # Index 0: total RAM

      # Index 1: used RAM

      # Index 2: free RAM

      def getRAMinfo():

      p = os.popen('free')

      i = 0

      while 1:

      i = i + 1

      line = p.readline()

      if i==2:

      return(line.split()[1:4])

      # Return % of CPU used by user as a character string

      def getCPUuse():

      return(str(os.popen("top -n1 | awk '/Cpu\(s\):/ {print $2}'").readline().strip(\

      )))

      # Return information about disk space as a list (unit included)

      # Index 0: total disk space

      # Index 1: used disk space

      # Index 2: remaining disk space

      # Index 3: percentage of disk used

      def getDiskSpace():

      p = os.popen("df -h /")

      i = 0

      while 1:

      i = i +1

      line = p.readline()

      if i==2:

      return(line.split()[1:5])

      # CPU informatiom

      CPU_temp = getCPUtemperature()

      CPU_usage = getCPUuse()

      # RAM information

      # Output is in kb, here I convert it in Mb for readability

      RAM_stats = getRAMinfo()

      RAM_total = round(int(RAM_stats[0]) / 1000,1)

      RAM_used = round(int(RAM_stats[1]) / 1000,1)

      RAM_free = round(int(RAM_stats[2]) / 1000,1)

      # Disk information

      DISK_stats = getDiskSpace()

      DISK_total = DISK_stats[0]

      DISK_used = DISK_stats[1]

      DISK_perc = DISK_stats[3]

      if __name__ == '__main__':

      print('')

      print('CPU Temperature = '+CPU_temp)

      print('CPU Use = '+CPU_usage)

      print('')

      print('RAM Total = '+str(RAM_total)+' MB')

      print('RAM Used = '+str(RAM_used)+' MB')

      print('RAM Free = '+str(RAM_free)+' MB')

      print('')

      print('DISK Total Space = '+str(DISK_total)+'B')

      print('DISK Used Space = '+str(DISK_used)+'B')

      print('DISK Used Percentage = '+str(DISK_perc))

      代碼寫完后按ctrl+o 再按ctrl+x即可保存退出。

      第三步:代入命令行:

      chmod +x get.py

      python get.py

      就有上圖的輸出了。

    來源: RCSN
    免責聲明:線纜網(wǎng)轉(zhuǎn)載作品均注明出處,本網(wǎng)未注明出處和轉(zhuǎn)載的,是出于傳遞更多信息之目的,并不意味 著贊同其觀點或證實其內(nèi)容的真實性。如轉(zhuǎn)載作品侵犯作者署名權(quán),或有其他諸如版權(quán)、肖像權(quán)、知識產(chǎn)權(quán)等方面的傷害,并非本網(wǎng)故意為之,在接到相關(guān)權(quán)利人通知后將立即加以更正。聯(lián)系電話:0571-87774297。
0571-87774297  
主站蜘蛛池模板: 美女张开腿让男人桶爽国产| 天天干天天操天天摸| 天天做天天摸天天爽天天爱| 少妇人妻av无码专区| 成人毛片免费观看| 亚洲理论精品午夜电影| 一本大道香焦在线视频| 欧美最猛黑人xxxx黑人猛交| 国产亚洲精品aa片在线观看网站| gav男人天堂| 日韩欧美综合视频| 伦理eeuss| 香蕉人人超人人超碰超国产| 大ji巴c死你h| 久久久久久九九精品久小说| 正在播放暮町ゆう子在线观看| 国产乱子伦手机在线| 91色视频网站| 我被继夫添我阳道舒服男男| 亚洲国产成人精品无码区在线观看 | 天堂一区二区三区精品| 一级黄色免费毛片| 最近在线中文字幕电影资源| 免费一级特黄特色大片在线观看| 香蕉久久成人网| 国产日韩欧美亚洲| assbbwbbwbbwbbwbw精品| 日日噜噜噜夜夜爽爽狠狠| 亚洲成a人一区二区三区| 精品一区二区三区自拍图片区| 国产尤物在线视精品在亚洲| 97色伦综合在线欧美视频| 成在线人AV免费无码高潮喷水| 久久久久亚洲av成人无码| 欧美亚洲国产激情一区二区| 免费黄色大片网站| 韩国日本一区二区| 国产精品视频一区二区三区经| 一本大道一卡2卡三卡4卡麻豆| 我想看一级毛片| 中文字幕亚洲欧美专区|