2013-12-19 2 views
0

gnuplot에서 일부 명령을 실행하려고하는데 오류가 발생합니다. 내가 이해하는 한, "!" before 명령. 내 스크립트는 다음과 같습니다.gnuplot에서 쉘 명령을 실행할 수 없습니다.

echo " 
set terminal dumb 
!OUT=$(adb shell dumpsys meminfo $PID | grep TOTAL) 
!OUT=$(echo $OUT | sed -r 's/ +/ /g' | cut -d ' ' -f 2-) 
!echo $OUT >> adbmon.log 
plot 'adbmon.log' using 1:6 title 'Free' 
" > sample.gp && gnuplot sample.gp 

무엇이 잘못 되었나요? 시간 내 주셔서 감사합니다.

+0

오류를 표시하면 도움이됩니다. 나는 당신이 실제로 여기에서 노력하고있는 어떤 단서도 갖고 있지 않다. – Bernhard

답변

1

모든 !에 대해 새 셸이 생성되므로 $OUT 변수는 두 번째 호출에서 사용할 수 없습니다. 다음과 같이 모든 것을 직접 플롯 할 수도 있습니다.

gnuplot -persist -e "set terminal dumb; plot '< adb shell dumpsys meminfo $PID | grep TOTAL | sed -r ''s/ +/ /g'' | cut -d '' '' -f 2-' using 1:6" 
+0

이 경우 나는 명령이 완전히 쓸모 없도록 $을 피하지 않았다. – somerandomusername

+0

그리고'$'를 벗어나면 작동합니까? 나를 놀라게 할 것이다. – Christoph

+0

다른 프로세스에서 adbmon.log에 데이터를 쓰고이 코드의 구조를 완전히 다시 작성했습니다. 하지만 다음에 gnuplot을 사용할 때 염두에 두어야 할 도움에 감사드립니다. – somerandomusername

관련 문제