포터블기기 강좌


지난 generic monitor 활용글에 이어지는 글입니다. 
가끔씩 그림으로 정보를 표시해야 할 필요가 있는데요 이럴때도 역시 다른 플러그인 사용할 필요 없이 generic monitor plugin을 사용할수 있더군요
메모리상황을 보여주는 것을 한번 예를 들어 볼게요

일단 메모리 명령은 free -h 를 하면 다음처럼 나오는데 이를 가공해서 만들어줍니다
$ free -h
              total        used        free      shared  buff/cache   available
Mem:            15G        1.2G         12G         69M        1.7G         14G
Swap:           15G          0B         15G


그림 생성은 imagemagick를 이용합니다
imagemagick는 커맨드라인에서 이미지 만들 수 있어서 이럴때 매우 유용해요.
convert란 명령으로 그림화일을 만들고 <img></img>태그로 보여줍니다.

imagemagick는  웹서버에서도 이미지 처리에 잘 쓰이는 패키지로 20년은 된 아주 강력한 이미지 생성ㆍ편집ㆍ조합툴입니다
데비안계 리눅스에 서 설치는 
sudo apt-get install imagemagick 고요 리퍼런스는 아래에 있습니다.
https://imagemagick.or


  0 #!/bin/bash
  1 res=$(free -h)
  2 total=$(printf "$res" | grep Mem | awk -F ' ' '{print $2}')
  3 used=$(printf "$res" | grep Mem | awk -F ' ' '{print $3}')
  4
  5 t="${total::-1}"
  6 u="${used::-1}"
  7 if [[ "${used: -1}" ==  "M" ]]; then
  8     r=$(echo "$u / $t * 0.1" | bc -l)
  9 elif [[ "${used: -1}" ==  "G" ]]; then
 10     r=$(echo "$u / $t * 100" | bc -l)
 11 fi
 12
 13 res=$(printf "%.0f\n" $r)
 14 color="#ffffff"
 15
 16 # image size
 17 width=85
 18 height=24

 19 bar_length=$(echo "$r * $width / 100" | bc -l)  
 20 r=$(printf "%.*f\n" 1 $r)  
 21 echo "<txt><span foreground=\"$color\">$r%</span></txt>"
 22                                                                  
 23 convert -size "$width"x"$height" canvas:white  -stroke "orange" \       
 24     -draw "fill black rectangle 0,0,$(( width - 1 )),$(( height - 1))" \
 25     -draw "fill cyan rectangle 0,0,$bar_length,$height" \
 26     $HOME/.icons/mem_bar.png           
 27                                            
 28 echo "<click>xfce4-taskmanager</click>"    
 29 echo "<tool>Used: $used / $total</tool>"                                    
 30 echo "<img>$HOME/.icons/mem_bar.png</img>"  



이전처럼 ./local/bin 에 실행권한 주고 generic monitor에서 적당한 시간간격으로 업데이트하게 합니다
클릭하면 태스크매니저를 띄워주게 하고 호버링하면 더 상세한 정보를 보여주도록 click태그와 tool태그에 넣어줍니다
이런식으로 모바일기기에서도 간단히 가제트를 만들수 있습니다

 <그림>
capture.png



요렇게 보입니다~ 
옆의 비트코인이나 요즘 급등하는 종목을 알려주게도 만들수 있고요. 따른걸 만들 필요없이 아주 편합니다

번호 제목 작성자 작성일 조회
201 PostmarketOS: `진짜`리눅스 스마트폰을 구하는 법. [2] piloteer 02.07 41307
200 리눅스민트: 화면분할해서 윈도우배치하기 영진 02.05 40230
199 안드로이드 -> 아이폰 이전시 주의할 점 [1] matsal 11.22 41094
198 리눅스: 구글tts를 이용하기 [1] 영진 10.01 40589
197 리눅스민트 : 구글드라이브 연동하기 2 영진 09.23 40395
196 리눅스: 쉽고 빠른 백업은 없을까? [3] 영진 09.16 9053
» xfce4에서 generic monitor활용 (막대그래프) file 영진 02.12 8945
194 리눅스: xfce4데스크탑에서 원하는 정보만 표시하기 [1] file 영진 02.05 8855
193 해피해킹키보드 흉내내기 (리눅스) [1] 영진 12.03 9146
192 리눅스민트: 네모액션으로 구글드라이브 연동 [2] file 영진 04.11 9268
191 구글킵 이용하기 [5] file 영진 04.06 9563
190 리눅스: 어학공부를 위한 mp3 플레이어 [2] 영진 01.18 9235
189 리눅스민트: 구글캘린더 연결하기 [1] file 영진 12.19 9506
188 리눅스 : 음성타이머를 만들어보자 [2] 영진 12.08 9150
187 리눅스데스크탑: 구글드라이브로 백업하기 [1] 영진 11.21 8861
186 리눅스데스크탑: 오늘의 인용문 표시하기 영진 10.19 8845
185 리눅스 데스트탑 : i3wm [2] 영진 10.17 8979
184 시내먼 데스크탑: 비트코인 티커 만들기 (초간단) [1] 영진 10.01 8802
183 윈도에서 간단하게 배터리 수명 알아보기 [3] matsal 05.10 9406
182 USB Type-C 케이블과 USB 3.2 그래픽 출력단자 [2] matsal 01.01 12829

오늘:
151
어제:
851
전체:
15,150,376